java五子棋联机源代码_网络版五子棋Java源代码.doc

服务器端源代码:

package org.shan.server;

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.FlowLayout;

import java.awt.Frame;

import java.awt.Label;

import java.awt.Panel;

import java.awt.TextArea;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

import java.io.DataInputStream;

import java.io.DataOutputStream;

import java.io.IOException;

import java.net.ServerSocket;

import java.net.Socket;

import java.util.Enumeration;

import java.util.Hashtable;

import java.util.StringTokenizer;

import javax.swing.JButton;

import javax.swing.JLabel;

import javax.swing.JPanel;

import javax.swing.UIManager;

import org.jvnet.substance.SubstanceLookAndFeel;

import org.jvnet.substance.skin.SubstanceOfficeBlue2007LookAndFeel;

/**

* 显示服务器及用户信息的Panel类

*/

class MessageServerPanel extends Panel {

TextArea messageBoard = new TextArea("", 22, 50,

TextArea.SCROLLBARS_VERTICAL_ONLY);

JLabel statusLabel = new JLabel("当前连接数:", Label.LEFT);

JPanel boardPanel = new JPanel();// 主显示区Panel

JPanel statusPanel = new JPanel();// 连接状态Panel

MessageServerPanel() {

setSize(350, 300);

setBackground(new Color(204, 204, 204));

setLayout(new BorderLayout());

boardPanel.setLayout(new FlowLayout());

boardPanel.setSize(210, 210);

statusPanel.setLayout(new BorderLayout());

statusPanel.setSize(210, 50);

boardPanel.add(messageBoard);

statusPanel.add(statusLabel, BorderLayout.WEST);

add(boardPanel, BorderLayout.CENTER);

add(statusPanel, BorderLayout.NORTH);

}

}

/**

* 服务器线程,主要用于服务器与客户端的通信

*/

class ServerThread extends Thread {

Socket clientSocket;

Hashtable clientDataHash;// Socket与发送数据的流的映射

Hashtable clientNameHash;// Socket与用户名的映射

Hashtable chessPeerHash;// 对弈的两个客户端用户名的映射

MessageServerPanel server;

boolean isClientClosed = false;

/**

* 服务器端线程的构造函数,用于初始化一些对象。

*/

ServerThread(Socket clientSocket, Hashtable clientDataHash,

Hashtable clientNameHash, Hashtable chessPe


版权声明:本文为weixin_40001519原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。