swing Java:从JTextField获取用户输入
目前,我正在使用以下代码向用户显示一个文本字段,并从用户检索输入
public void getInputFromUser ()
{
String input = null;
JTextField textField = new JTextField();
textField.setColumns(50);
textField.setVisible(true);
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
frame.setSize(300, 75);
frame.add(textField);
frame.setVisible(true);
frame.requestFocus();
frame.addWindowListener(null);
textField.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
String text = textField.getText();
System.out.println(text);
}
});
这个很好用。然而,问题是:
•我希望能够在用户关闭对话框时获得输入,就像在用户点击enter键时一样
•我想停止程序的执行,直到用户输入内容并关闭对话框。现在,即使在用户在对话框/文本框中输入任何内容之前,程序仍将继续运行
# 1 楼答案
我知道一个简单的方法,你怎么做。当我需要制作类似的东西时,我总是使用JDialog。如果将JDialog设置为
modal
,那么如果JDialog可见,它将停止程序的执行。我在下面更新了您的代码: