📄 client.java
字号:
import java.io.*;
import java.net.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class client{
JFrame main_frame;
JPanel npanel,cpanel,spanel;
JTextField ip,send_textfield;
JTextArea show_textarea;
JButton connect_button,send_button;
JScrollPane scroll_textarea;
PrintWriter out;
mythread2 a;
client()
{
main_frame=new JFrame("客户端");
npanel=new JPanel(new FlowLayout(FlowLayout.LEFT));
cpanel=new JPanel(new FlowLayout(FlowLayout.LEFT));
spanel=new JPanel(new FlowLayout(FlowLayout.LEFT));
send_textfield=new JTextField(15);
ip=new JTextField("127.0.0.1",8);
show_textarea=new JTextArea(20,18);
connect_button=new JButton("连接服务端");
send_button=new JButton("发送");
scroll_textarea=new JScrollPane(show_textarea,
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS
);
npanel.add(ip);
npanel.add(connect_button);
cpanel.add(scroll_textarea);
spanel.add(send_textfield);
spanel.add(send_button);
main_frame.getContentPane().add(npanel,BorderLayout.NORTH);
main_frame.getContentPane().add(cpanel,BorderLayout.CENTER);
main_frame.getContentPane().add(spanel,BorderLayout.SOUTH);
main_frame.setSize(250,500);
main_frame.setVisible(true);
connect_button.addMouseListener(new mymouse2(this));
send_button.addMouseListener(new mymouse2(this));
}
void connectsocket()
{
a=new mythread2(this);
a.start();
}
void showarea()
{
String message=new String();
message=send_textfield.getText()+"\r\n";
show_textarea.append("客户端:"+message);
}
public void senddata()
{
String message=new String();
message=send_textfield.getText();
a.out.println(message);
a.out.flush();
}
public static void main(String args[])
{
client qkl=new client();
}
}
class mymouse2 implements MouseListener
{
client tomouse;
mymouse2(client tomouse)
{
this.tomouse=tomouse;
}
public void mouseClicked(MouseEvent e)
{
JButton one=(JButton)e.getSource();
if(one==tomouse.connect_button)
{
tomouse.connectsocket();
}
else
{
tomouse.showarea();
tomouse.senddata();
tomouse.send_textfield.setText("");
}
}
public void mousePressed(MouseEvent e) {
}
public void mouseReleased(MouseEvent e) {
}
public void mouseEntered(MouseEvent e) {
}
public void mouseExited(MouseEvent e) {
}
}
class mythread2 extends Thread
{
client tomythread2;
Socket sc;
BufferedReader in;
PrintWriter out;
mythread2(client tommythread2)
{
this.tomythread2=tommythread2;
try{
Socket sc=new Socket(tomythread2.ip.getText(),730);
tomythread2.show_textarea.append("已经连接到服务端!"+"\r\n");
tomythread2.connect_button.setEnabled(false);
in=new BufferedReader(new InputStreamReader(sc.getInputStream()));
out=new PrintWriter(new OutputStreamWriter(sc.getOutputStream()));
}
catch(IOException aa)
{
}
}
public void run()
{
while(true)
{
String message=new String();
try
{
message=in.readLine();
if(message!=null)
tomythread2.show_textarea.append("服务端:"+message+"\r\n");
else
{
tomythread2.show_textarea.append("客户已经断开连接"+"\r\n");
sc.close();
return;
}
}
catch(IOException e)
{
tomythread2.show_textarea.append("readline error!");
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -