我想创建一个与在校学生相关的小型 Netbeans 应用程序。我有两个 JTextFields。在这个JTextFields中,我想显示一些单词,如"苹果",然后想要显示"芒果"等。
详情如下。
-
当应用程序启动时,我想在 JtextField1 中显示为"苹果"。当学生将其键入为相同或错误的条目时,然后自动移动到同一JTextfield1中的下一个单词"芒果"。
-
在此应用程序中,JButton 将不会被使用。
我猜你有两个JTextFields,一个用户不应该编辑,仅用于显示 - 所以使该字段不可编辑
- 调用
setFocusable(false)
,因此 JTextField 永远无法接收焦点 - 如果您愿意,请致电
setEditable(false)
在你的第二个 JTextField 中,通过addActionListener(...)
给它一个 ActionListener,在侦听器内部让代码检查第二个 JTextField 的文本,如果不正确,则更改第一个 JTextField 中的文本。
firstTextField.setFocusable(false);
firstTextField.setEditable(false);
secondTextField.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String text = secondTextField.getText();
// here check the text String and if incorrect
// call setText(...) on the firstTextField
}
});
请注意,通过将 ActionListener 添加到 JTextField 本身,您现在拥有一个侦听器,当此字段具有焦点时,当用户按下 Enter 按钮时,该侦听器将被激活。不需要 JButton 即可正常工作。