资源简介

包括服务器端和客户端的五子棋游戏,用java语言写,使用eclipse软件。客户端和服务器端可交互

资源截图

代码片段和文件信息

package tictactoe2;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.net.Socket;
import java.net.InetAddress;
import java.io.IOException;

import javax.swing.JButton;
import javax.swing.Jframe;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.SwingUtilities;
import java.util.Formatter;
import java.util.Scanner;
import java.util.concurrent.Executors;
import java.util.concurrent.ExecutorService;

public class TicTacToeClient extends Jframe implements Runnable 
{
   private JTextField idField; // textfield用来显示玩家标记
   private JTextArea displayArea; // JTextArea用来显示输出
   private JPanel boardPanel; // panel用来显示键盘
   private JPanel panel2; // panel2用来装载panel
   private JPanel panel3; //用于布局
   private JButton StartButton;//开始游戏按钮
   private Square[][] board; // 用来记录下棋信息的board数组
   private Square currentSquare; //当前小正方形
   private Socket connection; // 与服务器端连接
   private Scanner input; // 从服务器端读数据
   private Formatter output; // 向服务器端写数据
   private String ticTacToeHost; // 服务器端的host name
   private String myMark; // 该客户端的 mark
   private boolean myTurn; // 轮到哪个客户端的记录
   private int count=1;
   private final String BLACK_MARK = “BLACK“; // 黑棋标记
   private final String WHITE_MARK = “WHITE“; // 白棋标记

   // 设置用户接口 和图形界面
   public TicTacToeClient( String host )
   { 
      ticTacToeHost = host; // 设置服务器端名字
      displayArea = new JTextArea( 8 30 ); // 创建JTextArea
      panel3=new JPanel();//创建panel3
      StartButton=new JButton(“开始游戏“);//创建开始游戏按钮
      StartButton.setSize(150 70);//设置按钮大小
      displayArea.setEditable( false );//设置displayArea不可编辑的属性
      panel3.add( new JScrollPane( displayArea ) BorderLayout.SOUTH );//JScrollPane( displayArea )添加到panel3的下端
      panel3.add( StartButton);//将StartButton添加到panel3
      add( panel3 BorderLayout.SOUTH );//将panel3添加到下端


      boardPanel = new JPanel(); // 创建boardPanel
      boardPanel.setSize(600600);//设置boardPanel大小
      boardPanel.setLayout( new GridLayout( 15 15 0 0 ) );//设置boardPanel15*15的布局

      board = new Square[ 15 ][ 15 ]; // 创建15*15的board
      
      ButtonListener listener = new ButtonListener();//按钮事件
      
      StartButton.addActionListener(listener);//开始游戏按钮添加事件


     

      
      for ( int row = 0; row < board.length; row++ ) 
      {
         
         for ( int column = 0; column < board[ row ].length; column++ ) 
         {
            // 创建square
            board[ row ][ column ] = new Square( “ “ row * 15 + column );
            boardPanel.add( board[ row ][ column ] ); // 添加square       
         } 
      } 

      idField = new J

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        301  2013-06-04 18:09  TicTacToe2\.classpath

     文件        386  2013-06-04 18:09  TicTacToe2\.project

     文件        629  2013-06-04 18:09  TicTacToe2\.settings\org.eclipse.jdt.core.prefs

     文件       1023  2013-06-07 12:17  TicTacToe2\bin\tictactoe2\TicTacToeClient$1.class

     文件        849  2013-06-07 12:17  TicTacToe2\bin\tictactoe2\TicTacToeClient$2.class

     文件        944  2013-06-07 12:17  TicTacToe2\bin\tictactoe2\TicTacToeClient$3.class

     文件       1199  2013-06-07 12:17  TicTacToe2\bin\tictactoe2\TicTacToeClient$ButtonListener.class

     文件       1021  2013-06-07 12:17  TicTacToe2\bin\tictactoe2\TicTacToeClient$Square$1.class

     文件       2588  2013-06-07 12:17  TicTacToe2\bin\tictactoe2\TicTacToeClient$Square.class

     文件       6843  2013-06-07 12:17  TicTacToe2\bin\tictactoe2\TicTacToeClient.class

     文件        693  2013-06-07 10:37  TicTacToe2\bin\tictactoe2\TicTacToeClientTest.class

     文件        849  2013-06-07 12:17  TicTacToe2\bin\tictactoe2\TicTacToeServer$1.class

     文件       4302  2013-06-07 12:17  TicTacToe2\bin\tictactoe2\TicTacToeServer$Player.class

     文件       5704  2013-06-07 12:17  TicTacToe2\bin\tictactoe2\TicTacToeServer.class

     文件        607  2013-06-07 10:37  TicTacToe2\bin\tictactoe2\TicTacToeServerTest.class

     文件      13344  2013-06-07 12:17  TicTacToe2\src\tictactoe2\TicTacToeClient.java

     文件        563  2013-06-07 00:07  TicTacToe2\src\tictactoe2\TicTacToeClientTest.java

     文件      16375  2013-06-07 12:17  TicTacToe2\src\tictactoe2\TicTacToeServer.java

     文件        354  2013-06-07 00:08  TicTacToe2\src\tictactoe2\TicTacToeServerTest.java

     目录          0  2013-06-07 12:18  TicTacToe2\bin\tictactoe2

     目录          0  2013-06-07 12:18  TicTacToe2\src\tictactoe2

     目录          0  2013-06-07 12:18  TicTacToe2\.settings

     目录          0  2013-06-07 12:18  TicTacToe2\bin

     目录          0  2013-06-07 12:18  TicTacToe2\src

     目录          0  2013-06-07 12:18  TicTacToe2

----------- ---------  ---------- -----  ----

                58574                    25


评论

共有 条评论