📄 serverlistenthread.java
字号:
//ServerListenThread 类
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.io.*;
import java.net.*;
public class ServerListenThread extends Thread
{
ServerSocket server;
JComboBox combobox;
JTextArea textarea;
JTextField textfield;
UserInfoList userInfoList;
Node client;
ServerReceiveThread recvThread;
public boolean isStop;
public ServerListenThread(ServerSocket server,JComboBox combobox,JTextArea textarea,JTextField textfield,UserInfoList userInfoList)
{
this.server = server;
this.combobox = combobox;
this.textarea = textarea;
this.textfield = textfield;
this.userInfoList = userInfoList;
isStop = false;
}
public void run()
{
while(!isStop && !server.isClosed())
{
try
{
client = new Node();
client.socket = server.accept();
client.output = new ObjectOutputStream(client.socket.getOutputStream());
client.output.flush();
client.input = new ObjectInputStream(client.socket.getInputStream());
client.username = (String)client.input.readObject();
combobox.addItem(client.username);
userInfoList.add(client);
textarea.append("用户" + client.username + "上线" + "\n");
textfield.setText("在线用户" + userInfoList.getCount() + "人\n");
recvThread = new ServerReceiveThread(textarea,textfield,combobox,client,userInfoList);
recvThread.start();
}
catch(Exception e){}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -