21xrx.com
2025-04-01 23:32:08 Tuesday
文章检索 我的文章 写文章
Java编写简单聊天界面
2023-06-15 19:15:41 深夜i     7     0
Java Swing 聊天界面

我最近学习了Java编程,打算练手写一个简单的聊天界面,具体实现的过程如下。

首先,我新建了一个Java项目,创建了一个主类ChattingApp,用Java Swing库实现了GUI界面。代码如下:

import javax.swing.*;
import java.awt.*;
public class ChattingApp extends JFrame {
  private JPanel panel = new JPanel();
  private JTextArea chatArea = new JTextArea(20, 60);
  private JScrollPane scroll = new JScrollPane(chatArea);
  private JTextField messageBox = new JTextField(40);
  private JButton sendBtn = new JButton("发送");
  public ChattingApp() {
    super("简单聊天界面");
    setSize(800, 600);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    chatArea.setEditable(false);
    panel.setLayout(new BorderLayout());
    panel.add(scroll, BorderLayout.CENTER);
    panel.add(messageBox, BorderLayout.NORTH);
    panel.add(sendBtn, BorderLayout.SOUTH);
    add(panel);
    setVisible(true);
  }
  public static void main(String[] args) {
    ChattingApp app = new ChattingApp();
  }
}

接着,我实现了用户在聊天窗口中发送消息时,将消息显示在聊天窗口上的功能,代码如下:

sendBtn.addActionListener(e -> {
  String message = messageBox.getText();
  if (message != null && !message.isEmpty()) {
    chatArea.append("Me: " + message + "\n");
    messageBox.setText("");
  }
});

最后,我还为聊天窗口添加了鼠标点击事件,当用户点击聊天窗口时,将自动将光标定位到发送消息的文本框中,代码如下:

chatArea.addMouseListener(new MouseAdapter() {
  @Override
  public void mouseClicked(MouseEvent e) {
    messageBox.requestFocus();
  }
});

三个

  
  

评论区

请求出错了