资源简介
用JAVA实现的联网五子棋 界面简单 是经典教程上的修改版 有判断胜负的功能
代码片段和文件信息
import java.awt.*;
import java.awt.event.*;
import java.net.*;
import java.io.*;
import javax.swing.*;
public class wuziqiClient extends Japplet implements Runnable {
private JTextField idField;
private JTextArea displayArea;
private JPanel boardPanel panel2;
private Square board[][] currentSquare;
private Socket connection;
private DataInputStream input;
private DataOutputStream output;
private char myMark;
private boolean myTurn;
private final char X_MARK = ‘●‘ O_MARK = ‘○‘;
//初始化界面
public void init()
{
Container container = getContentPane();
// 设置 JTextArea 显示信息给玩家
displayArea = new JTextArea( 6 20 );
displayArea.setEditable( false );
container.add( new JScrollPane( displayArea ) BorderLayout.SOUTH );
// 设置五子棋的棋盘 15*15 格子
boardPanel = new JPanel();
boardPanel.setLayout( new GridLayout( 15 15 0 0 ) );
board = new Square[ 15 ][ 15 ];
for ( int row = 0; row < board.length; row++ ) {
for ( int column = 0; column < board[ row ].length; column++ ) {
// 创建棋盘矩阵
board[ row ][ column ] = new Square( ‘ ‘ row * 15 + column );
boardPanel.add( board[ row ][ column ] );
}
}
// 创建一个 textfield 显示玩家使用的棋子是黑或者是白
idField = new JTextField();
idField.setEditable( false );
container.add( idField BorderLayout.NORTH );
panel2 = new JPanel();
panel2.add( boardPanel BorderLayout.CENTER );
container.add( panel2 BorderLayout.CENTER );
}
public void start()
{
try {
// 连接到服务器
connection = new Socket( getCodebase().getHost() 12345 );
// 从服务器获得信息
input = new DataInputStream( connection.getInputStream() );
output = new DataOutputStream( connection.getOutputStream() );
}
catch ( IOException ioException ) {
ioException.printStackTrace();
}
// 创建一个输出信息的线程
Thread outputThread = new Thread( this );
outputThread.start();
}
public void run()
{
// 确定玩家锁使用的棋子
try {
myMark = input.readChar();
//在 textField 中输出玩家使用的棋子
SwingUtilities.invokeLater(
new Runnable() {
public void run()
{
idField.setText( “您的棋子是 \““ + myMark + “\““ );
}
}
);
myTurn = ( myMark == X_MARK ? true : false );//黑棋玩家先走
while ( true ) {
processMessage( input.readUTF() );
}
}
catch ( IOException ioException ) {
ioException.printStackTrace();
}
}
// 处理玩家收到的信息 显示在textArea中
private void processMessage( String message )
{
// 合法情况
if ( message.equals( “落子“ ) ) {
displayMessage(
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 9416 2008-06-22 19:33 联网五子棋\wuziqiServer.java
文件 6454 2008-06-22 20:00 联网五子棋\wuziqiClient.java
文件 75264 2008-06-22 20:43 联网五子棋\JAVA期末课程设计报告.doc
文件 851 2008-06-15 22:19 联网五子棋\TicTacToeServer$1.class
文件 2863 2008-06-15 22:19 联网五子棋\TicTacToeServer$Pla
文件 4113 2008-06-15 22:19 联网五子棋\TicTacToeServer.class
文件 886 2008-06-15 22:25 联网五子棋\TicTacToeClient$1.class
文件 851 2008-06-15 22:25 联网五子棋\TicTacToeClient$2.class
文件 690 2008-06-15 22:25 联网五子棋\TicTacToeClient$3.class
文件 822 2008-06-15 22:25 联网五子棋\TicTacToeClient$Square$1.class
文件 1285 2008-06-15 22:25 联网五子棋\TicTacToeClient$Square.class
文件 4450 2008-06-15 22:25 联网五子棋\TicTacToeClient.class
文件 866 2008-06-22 20:00 联网五子棋\wuziqiClient$1.class
文件 833 2008-06-22 20:00 联网五子棋\wuziqiClient$2.class
文件 663 2008-06-22 20:00 联网五子棋\wuziqiClient$3.class
文件 792 2008-06-22 20:00 联网五子棋\wuziqiClient$Square$1.class
文件 1261 2008-06-22 20:00 联网五子棋\wuziqiClient$Square.class
文件 4413 2008-06-22 20:00 联网五子棋\wuziqiClient.class
文件 833 2008-06-22 19:33 联网五子棋\wuziqiServer$1.class
文件 2873 2008-06-22 19:33 联网五子棋\wuziqiServer$Pla
文件 4123 2008-06-22 19:33 联网五子棋\wuziqiServer.class
文件 87 2008-06-15 22:54 联网五子棋\jinziqi.htm
目录 0 2008-05-19 18:39 联网五子棋
----------- --------- ---------- ----- ----
124689 23
- 上一篇:commons-codec-1.11.jar
- 下一篇:JAVA办公局域网设计论文
相关资源
- JAVA办公局域网设计论文
- java时钟日历
- javaWeb学习路线
- 基于java swing的多线程电梯调度模拟
- 图像隐写F5 JAVA源代码
- Java进阶教程-动力节点.txt
- 计算机组成原理(BOOTH算法)java源代
- SparkSQL HDFS JAVA调用完整
- jar包反编译工具java
- JSP读取TXT文件并显示
- 图形界面通讯录信息资料可用文本保
- 管道过滤器的实现java
- javax.servlet.rar
- java 我行我素购物管理系统源码
- JSP+JavaBean+Servlet实现分页技术
- JAVA的小赛车程序
- 剑指Java面试-Offer直通车.txt
- (java).doc
- Java读取json文件并对json数据进行读取
- Compiler_mean3.rar
- Delphi与JAVA互加解密AES算法
- java面试题 IBM交通银行等一些外包的
- 小区物业管理系统JAVA+sqlserver
- Java泛型三篇文章,让你彻底理解泛型
- 用Java程序编写一个记事本程序的设计
- 把java项目安装为window服务
- 基于JavaSocket多客户端并发通信聊天程
- 五子棋(java)
- java程序设计实用教程_(第3版)_课后
- java实现分治法寻找最近点对
评论
共有 条评论