資源簡介
嘔心瀝血的java復雜聊天室(包括自定義應用層協議、CS多線程、多客戶端登錄、上下線提醒等等)。

代碼片段和文件信息
package?client;
import?java.awt.EventQueue;
import?java.awt.event.ActionEvent;
import?java.awt.event.ActionListener;
import?java.net.DatagramSocket;
import?java.net.InetAddress;
import?java.net.SocketException;
import?java.util.Random;
import?java.util.Vector;
import?javax.swing.JButton;
import?javax.swing.JComboBox;
import?javax.swing.Jframe;
import?javax.swing.JLabel;
import?javax.swing.JOptionPane;
import?javax.swing.JPanel;
import?javax.swing.JScrollPane;
import?javax.swing.JTextArea;
import?javax.swing.JTextField;
import?javax.swing.border.EmptyBorder;
import?common.CMD;
import?common.ChatText;
import?common.Client;
import?common.Message;
import?common.Utils;
public?class?ClientMainframe?extends?Jframe?{
private?static?final?long?serialVersionUID?=?7952439640530949282L;
private?JPanel?contentPane;
private?JTextField?textFieldUserName;
//由于本地測試時,客戶端的端口號要不一致
private?static?int?clientPort?=?new?Random().nextInt(10000)+1024;
//每個客戶端只有一個接收數據包套接字
private?static?DatagramSocket?receiveSocket?=?null;
private?boolean?connectFlag?=?false;
public?static?void?main(String[]?args)?{
EventQueue.invokeLater(new?Runnable()?{
public?void?run()?{
try?{
ClientMainframe?frame?=?new?ClientMainframe();
frame.setVisible(true);
}?catch?(Exception?e)?{
e.printStackTrace();
}
}
});
}
/**
?*?Create?the?frame.
?*/
public?ClientMainframe()?{
settitle(“Client?:?Off“);
setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);
setBounds(100?100?450?371);
contentPane?=?new?JPanel();
contentPane.setBorder(new?EmptyBorder(5?5?5?5));
setContentPane(contentPane);
contentPane.setLayout(null);
textFieldUserName?=?new?JTextField();
textFieldUserName.setBounds(88?10?133?21);
contentPane.add(textFieldUserName);
textFieldUserName.setColumns(10);
final?JButton?btnConnect?=?new?JButton(“connect“);
btnConnect.setBounds(228?9?93?23);
contentPane.add(btnConnect);
final?JButton?btnQuit?=?new?JButton(“quit“);
btnQuit.setEnabled(false);
btnQuit.setBounds(331?9?93?23);
contentPane.add(btnQuit);
JLabel?lblNewLabel_1?=?new?JLabel(“Message?Records“);
lblNewLabel_1.setBounds(10?45?113?15);
contentPane.add(lblNewLabel_1);
JLabel?lblNewLabel_2?=?new?JLabel(“Sentence“);
lblNewLabel_2.setBounds(10?199?73?15);
contentPane.add(lblNewLabel_2);
JLabel?lblNewLabel_3?=?new?JLabel(“Receiver“);
lblNewLabel_3.setBounds(331?199?54?15);
contentPane.add(lblNewLabel_3);
final?JButton?btnSend?=?new?JButton(“Send“);
btnSend.setEnabled(false);
btnSend.setBounds(331?263?93?57);
contentPane.add(btnSend);
final?JComboBox?comboBoxReceiver?=?new?JComboBox();
comboBoxReceiver.setBounds(331?225?93?21);
contentPane.add(comboBoxReceiver);
JLabel?lblNewLabel_4?=?new?JLabel(“User?Name“);
lblNewLabel_4.setBounds(10?10?73?15);
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????301??2014-05-08?11:55??JChatRoom\.classpath
?????文件????????385??2014-05-08?11:55??JChatRoom\.project
?????文件????????629??2014-05-08?11:55??JChatRoom\.settings\org.eclipse.jdt.core.prefs
?????文件????????750??2014-05-09?11:35??JChatRoom\bin\client\ClientMainfr
?????文件???????4788??2014-05-09?11:35??JChatRoom\bin\client\ClientMainfr
?????文件???????2761??2014-05-09?11:35??JChatRoom\bin\client\ClientMainfr
?????文件???????2888??2014-05-09?11:35??JChatRoom\bin\client\ClientMainfr
?????文件???????2533??2014-05-09?11:35??JChatRoom\bin\client\ClientMainfr
?????文件???????4398??2014-05-09?11:35??JChatRoom\bin\client\ClientMainfr
?????文件????????824??2014-05-09?11:35??JChatRoom\bin\common\ChatText.class
?????文件???????1120??2014-05-09?11:32??JChatRoom\bin\common\Client.class
?????文件???????1171??2014-05-09?10:07??JChatRoom\bin\common\CMD.class
?????文件????????874??2014-05-09?10:52??JChatRoom\bin\common\Message.class
?????文件???????2272??2014-05-09?09:48??JChatRoom\bin\common\Utils.class
?????文件????????750??2014-05-09?11:34??JChatRoom\bin\server\ServerMainfr
?????文件???????5075??2014-05-09?11:34??JChatRoom\bin\server\ServerMainfr
?????文件???????1389??2014-05-09?11:34??JChatRoom\bin\server\ServerMainfr
?????文件???????2553??2014-05-09?11:34??JChatRoom\bin\server\ServerMainfr
?????文件???????4982??2014-05-09?11:34??JChatRoom\bin\server\ServerMainfr
?????文件??????10088??2014-05-09?11:35??JChatRoom\src\client\ClientMainfr
?????文件????????632??2014-05-09?11:35??JChatRoom\src\common\ChatText.java
?????文件????????960??2014-05-09?11:32??JChatRoom\src\common\Client.java
?????文件????????271??2014-05-09?10:07??JChatRoom\src\common\CMD.java
?????文件????????676??2014-05-09?10:52??JChatRoom\src\common\Message.java
?????文件???????1698??2014-05-09?09:48??JChatRoom\src\common\Utils.java
?????文件???????7935??2014-05-09?11:34??JChatRoom\src\server\ServerMainfr
?????目錄??????????0??2014-05-09?10:32??JChatRoom\bin\client
?????目錄??????????0??2014-05-09?10:29??JChatRoom\bin\common
?????目錄??????????0??2014-05-09?11:03??JChatRoom\bin\server
?????目錄??????????0??2014-05-08?21:06??JChatRoom\src\client
............此處省略9個文件信息
評論
共有 條評論