1.创建一个继承自JFrame类的子类GUI,GUI类中包含一个构造方法GUI()用于实现GUI用户界面的设计,主要设计添加组件跟组件布局两个方面。 2.创建一个窗体: this.setTitle("用户注册");//创建一个标题为用户注册的窗体 this.setSize(340,450);//该窗体大小 this.setLayout(new GridLayout(8,1));//该窗体中的面板的排列方式 this.setVisible(true); //显示窗体 该窗体用于安放各面板,面板包含各组件 3.添加各组件: a.创建8个面板JPanel对像以8*1的网格布局于窗体中。 b.给每个面板添加组件: 第一个:添加文本编辑框JTextField对象,设置长度和标签对象Label 第二个:添加文本编辑框JTextField对象,设置长度和标签对象Label 第三个:添加文本编辑框JTextField对象,设置长度和标签对象Label 第四个:添加单选框按钮JRadioButton对象(参数为按钮名)添加标签Label 第五个:添加复选框按钮JCheckBox(参数为按钮名)添加标签Label 第六个:添加一个文本域JTextArea对象,添加标签Label 第七个:创建一个下拉列表框JComboBox对象,添加面板标签并用对象 comboBox调用addItem方法添加五个下拉列表 第八个:添加两个按钮,设置按钮名
时间: 2024-02-18 07:02:13 浏览: 81
,一个用于发送消息,一个用于清空文本框和文本域。
下面是一个简单的实现:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class GUI extends JFrame {
private JTextField inputField;
private JTextArea outputArea;
public GUI() {
// 设置窗体属性
setTitle("Chat Robot");
setSize(400, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// 创建面板和布局
JPanel panel = new JPanel();
panel.setLayout(new BorderLayout());
// 添加输入文本框和按钮
inputField = new JTextField();
JButton sendButton = new JButton("Send");
sendButton.addActionListener(new SendButtonListener());
JPanel inputPanel = new JPanel();
inputPanel.setLayout(new BorderLayout());
inputPanel.add(new JLabel("Input:"), BorderLayout.WEST);
inputPanel.add(inputField, BorderLayout.CENTER);
inputPanel.add(sendButton, BorderLayout.EAST);
panel.add(inputPanel, BorderLayout.NORTH);
// 添加输出文本域
outputArea = new JTextArea();
outputArea.setEditable(false);
JScrollPane scrollPane = new JScrollPane(outputArea);
JPanel outputPanel = new JPanel();
outputPanel.setLayout(new BorderLayout());
outputPanel.add(new JLabel("Output:"), BorderLayout.WEST);
outputPanel.add(scrollPane, BorderLayout.CENTER);
panel.add(outputPanel, BorderLayout.CENTER);
// 添加面板到窗体中
add(panel);
setVisible(true);
}
private class SendButtonListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
String input = inputField.getText();
String output = ChatRobot.getResponse(input);
outputArea.append("User: " + input + "\n");
outputArea.append("Robot: " + output + "\n");
inputField.setText("");
}
}
public static void main(String[] args) {
new GUI();
}
}
```
其中,`ChatRobot`是一个聊天机器人类,根据输入的消息返回响应。`SendButtonListener`是一个按钮监听器,用于处理用户点击发送按钮后的操作。这里使用了`JTextField`、`JTextArea`、`JButton`、`JLabel`、`JPanel`、`JScrollPane`和`BorderLayout`等组件和布局。
阅读全文