⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tictactoeclient.java

📁 tictactoc 井字游戏
💻 JAVA
字号:
package NetworkTicTacToe.client;import game.basic.XYLocation;import game.adversary.*;import java.awt.*;import java.awt.event.*;import java.net.*;import java.io.*;import javax.swing.*;public class TicTacToeClient extends JApplet implements Runnable {    private JButton computer, network;    private JTextArea display;    private JPanel panel1, boardPanel, panel2;    private Square board[][], currentSquare;    private Socket connection;    private DataInputStream input;    private DataOutputStream output;    private Thread outputThread;    private char myMark;    private boolean myTurn, vsComputer;    private TicTacToe t3;    public TicTacToeClient() {        panel1 = new JPanel();        panel1.setLayout(new GridLayout(1, 3, 0, 0));        display = new JTextArea(4, 30);        display.setEditable(false);        getContentPane().add(new JScrollPane(display), BorderLayout.SOUTH);        boardPanel = new JPanel();        boardPanel.setLayout(new GridLayout(3, 3, 0, 0));        board = new Square[3][3];        for(int row = 0; row < board.length; row++) {            for(int col = 0; col < board[row].length; col++) {                board[row][col] = new Square(' ', row*3 +col);                board[row][col].addMouseListener(                     new SquareListener(this, board[row][col]));                boardPanel.add(board[row][col]);            }        }//        getContentPane().add(id, BorderLayout.NORTH);        computer = new JButton("筿福癸驹");        network = new JButton("硈絬癸驹");        computer.addActionListener(            new ActionListener() {                public void actionPerformed(ActionEvent e) {                    computer();                }            }        );        network.addActionListener(            new ActionListener() {                public void actionPerformed(ActionEvent e) {                    network();                }            }        );        panel1.add(computer);        panel1.add(network);        getContentPane().add(panel1, BorderLayout.NORTH);        panel2 = new JPanel();        panel2.add(boardPanel, BorderLayout.CENTER);        getContentPane().add(panel2, BorderLayout.CENTER);    }    public void network() {        vsComputer = false;        for(int row = 0; row < board.length; row++)            for(int col = 0; col < board[row].length; col++) {                board[row][col].reSetMark();                board[row][col].repaint();            }        try {            connection = new Socket(getDocumentBase().getHost(), 5000);            input = new DataInputStream(connection.getInputStream());            output = new DataOutputStream(connection.getOutputStream());        }        catch(IOException e) {            e.printStackTrace();        }                                                                                       outputThread = new Thread(this);        outputThread.start();    }    public void computer() {        vsComputer = true;        for(int row = 0; row < board.length; row++)            for(int col = 0; col < board[row].length; col++) {                board[row][col].reSetMark();                board[row][col].repaint();            }        JSlider waitSelect = new JSlider(SwingConstants.HORIZONTAL, 0, 6, 0);        waitSelect.setPaintTrack(true);        waitSelect.setPaintLabels(true);        waitSelect.setMajorTickSpacing(1);        waitSelect.setMajorTickSpacing(1);        waitSelect.setPaintTicks(true);        JOptionPane.showOptionDialog(null,                waitSelect, "砞﹚螟

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -