📄 client.java
字号:
import java.io.*;
import java.net.*;
import java.applet.*;
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
public class Client extends JApplet implements Runnable,ActionListener{
JPanel p2;
JButton denglu,fasong;
JTextField qhao,nichen;
JLabel xinxi;
JTextArea liaotian,xiaoxi;
Socket socket=null;
DataInputStream in=null;
DataOutputStream out=null;
Thread thread;
String sss=null;
public void init(){
JPanel p1=new JPanel();
qhao=new JTextField(10);
nichen=new JTextField(12);
liaotian=new JTextArea(15,15);
xiaoxi=new JTextArea(5,52);
liaotian.setEditable(false);
denglu=new JButton("登录");
fasong=new JButton("发送");
nichen.setEditable(false);
xinxi=new JLabel("请输入QQ号码...");
p1.add(xinxi);p1.add(qhao);p1.add(nichen);p1.add(denglu);
p2=new JPanel(new BorderLayout());
JPanel p3=new JPanel();
p2.add(new JScrollPane(liaotian),BorderLayout.CENTER);
p3.add(new JScrollPane(xiaoxi));p3.add(fasong);
p2.add(p3,BorderLayout.SOUTH);
getContentPane().add(p2,BorderLayout.CENTER);
getContentPane().add(p1,BorderLayout.NORTH);
p2.setVisible(false);
fasong.addActionListener(this);
denglu.addActionListener(this);
}
public void start(){
}
public void run(){
p2.setVisible(true);
String s=null;
while(true){
try{
s=in.readUTF();
liaotian.append(s);
}catch(IOException e4){
xinxi.setText("断开联系..请重新登录");
break;
}
}
}
public void actionPerformed(ActionEvent e5){
if(e5.getSource()==fasong){
String x=xiaoxi.getText().trim();
if(x!=null){
try{
out.writeUTF(sss+":"+x+"\n");
}catch(IOException e1){
}
liaotian.append(sss+":"+x+"\n");
xiaoxi.setText("");
}
}
else if(e5.getSource()==denglu){
String x2=qhao.getText().trim(),g;
if(!x2.equals("")){
try{
socket=new Socket(this.getCodeBase().getHost(),8001);
in=new DataInputStream(socket.getInputStream());
out=new DataOutputStream(socket.getOutputStream());
out.writeUTF(x2);
}catch(IOException e){
xinxi.setText("服务器没开,请Q我..");
}
try{
if((g=in.readUTF()).equals(x2)){
x2=g;
sss=in.readUTF();
nichen.setText(sss);
liaotian.setText(in.readUTF());
}
else {xinxi.setText(g);
}
}catch(IOException e2){
xinxi.setText("连接错误,请与我联系");
}
if(thread==null){
xinxi.setText("已成功连接");
thread=new Thread(this);
thread.start();
}
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -