问题在问题的标题中。我有几节课。这是第一个
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class GraphicalDisplay {
private JFrame frame;
private JLabel titleLabel1;
private JLabel titleLabel2;
private JLabel titleLabel3;
private JLabel titleLabel4;
private JLabel titleLabel5;
private TextField text;
private Button button;
private JLabel titleLabel6;
public GraphicalDisplay(String title1, String title2, String title3, String title4) {
buildFrame();
titleLabel1.setText(title1);
titleLabel2.setText(title2);
titleLabel3.setText(title3);
titleLabel6.setText(title4);
}
private void buildFrame() {
frame = new JFrame("Графический дисплей");
frame.setPreferredSize(new Dimension(800, 300));
frame.setLayout(new GridLayout(8, 1));
titleLabel1 = new JLabel();
titleLabel2 = new JLabel();
titleLabel3 = new JLabel();
titleLabel6 = new JLabel();
text = new TextField("", 50);
button = new Button("Ввести");
button.addActionListener((ActionListener) this);
frame.add(titleLabel1);
frame.add(titleLabel2);
frame.add(titleLabel3);
frame.add(text);
frame.add(button);
frame.add(titleLabel6);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setAlwaysOnTop(true);
frame.setVisible(true);
frame.pack();
}
@Override
public void mouseClicked(ActionEvent e) {
getText1();
}
public String getText1() {
String textbutton = text.getText();
return textbutton;
}
public void setText4(String text) {
titleLabel6.setText(text);
}
}
这是第二个
import java.awt.event.MouseEvent;
import java.util.HashSet;
public class SupportSystem
{
private InputReader reader;
private Responder responder;
public GraphicalDisplay display1;
public SupportSystem()
{
reader = new InputReader();
responder = new Responder();
}
public void start()
{
boolean finished = false;
printWelcome();
while(!finished) {
String textbutton = display1.mouseClicked(MouseEvent);
HashSet<String> input = reader.getInput(textbutton);
if(input.contains("exit")==true) {
finished = true;
}
else {
String response = responder.generateResponse(input);
System.out.println(response);
}
}
printGoodbye();
}
public void printWelcome()
{
display1 = new GraphicalDisplay("Добро пожаловать в техподдержку DodgySoft.", "Расскажите нам о вашей проблеме.", "Введите 'exit' для выхода из системы.","");
}
private void printGoodbye()
{
display1.setText4("Приятно было пообщаться. До свидания...");
}
}
研究 Internet 上的内容,我发现了各种处理程序、侦听器、事件等。我自己甚至无法理解它的外观,更不用说工作了。帮助!
要从 JFrame 字段中获取文本,请使用 .getText() 方法并将该文本写入 String 变量。例如,有这样的代码。
接下来,我们对字符串做我们想做的事情,它将包含来自输出字段的文本
可以通过这种方式处理对 GUI 按钮的单击。
如果您需要处理按键,例如 F1...F9 或 Tab、Space 等,请使用虚拟按钮命令
例如像这样
如果您需要将文本从键盘写入输出字段,我建议您这样做
处理鼠标点击
如果您需要通过单击“十字”来关闭窗口,则有一些特殊功能,在这种情况下您不需要触摸鼠标。关闭应用程序是这样完成的