[英]How to enter a specific word in a textfield
我必须在下面的代码中添加什么,以便用户必须输入特定的单词(例如“ London”)才能打开JOptionPane
输入对话框。
JFrame frame = new JFrame("JTextField");
JTextField textfield = new JTextField(30);
frame.add(textfield);
目前,我可以在文本字段中输入任何内容,然后将出现对话框。 我只希望在用户输入特定单词时打开它。
我将动作事件与动作侦听器一起使用,并执行动作来打开JOptionPane
对话框。
public class Test9 {
public static void main(String[] args) {
JFrame frame = new JFrame("JTextField");
JTextField textfield = new JTextField(30);
frame.add(textfield);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(500,200);
JPanel panel = new JPanel();
frame.add(panel);
panel.add(textfield);
textfield.addActionListener(new Action4());
}
}
你可以做这样的事情。
if(museum_name.equals("London")){
JOptionPane.showMessageDialog(null, " You are attending the " + museum_name);
} else{
// show the error message
}
鼓励使用equals()方法进行String比较。 请注意, equals()
用于比较两个字符串是否相等,而operator ==
比较Java中对象的引用。
更新
如果输入的不是“伦敦”,则要显示错误消息,您可以执行以下操作。
static class Action4 implements ActionListener {
@Override
public void actionPerformed(java.awt.event.ActionEvent e) {
String museum_name = ((JTextField) e.getSource()).getText();
if (museum_name.equals("London")) {
JOptionPane.showMessageDialog(null, "You are attending the " + museum_name);
} else {
JOptionPane.showMessageDialog(null, "Wrong input!");
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.