因课设需要,有一个大佬的程序找不到来源了,迫不得已自己搞个博客,如果有朋友找到这个程序原来在的博客,一定加上
package tcp;
import java.awt.*;
import java.awt.event.*;
import java.net.*;
import java.io.*;
import javax.swing.*;
public class book extends JFrame {
JButton sendBt;
JTextField inputField;
JTextArea chatContent;
public book() {
String a;
this.setLayout(new BorderLayout());
JPanel inputPanel0 = new JPanel(); // 创建一个JPanel面板
chatContent = new JTextArea(12, 34); // 创建一个文本域
// 创建一个滚动面板,将文本域作为其显示组件
JScrollPane showPanel = new JScrollPane(chatContent);
chatContent.setEditable(false); // 设置文本域不可编辑
JPanel inputPanel = new JPanel(); // 创建一个JPanel面板
inputField = new JTextField(20); // 创建一个文本框
sendBt = new JButton("发送"); // 创建一个发送按钮
// 为按钮添加事件
sendBt.addActionListener(new ActionListener() { // 为按钮添加一个监听事件
public void actionPerformed(ActionEvent e) {// 重写actionPerformed方法
String content= inputField.getText(); // 获取输入的文本信息
// 判断输入的信息是否为空
if (content != null && !content.trim().equals("")) {
// 如果不为空,将输入的文本追加到到聊天窗口
chatContent.append("本人:" + content + "\n");
} else {
// 如果为空,提示聊天信息不能为空
chatContent.append("聊天信息不能为空" + "\n");
}
inputField.setText(""); // 将输入的文本域内容置为空
}
});
Label label = new Label("聊天信息"); // 创建一个标签
Label label0 = new Label("input please"); // 创建一个标签
inputPanel0.add(label0);
inputPanel.add(label); // 将标签添加到JPanel面板
inputPanel.add(inputField); // 将文本框添加到JPanel面板
inputPanel.add(sendBt); // 将按钮添加到JPanel面板
// 将滚动面板和JPanel面板添加到JFrame窗口
this.add(inputPanel0, BorderLayout.NORTH);
this.add(showPanel, BorderLayout.CENTER);
this.add(inputPanel, BorderLayout.SOUTH);
this.setTitle("聊天窗口");
this.setSize(400, 300);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
}