如果必填文本字段为空,如何发出警告?

时间:2013-04-20 03:48:38

标签: java swing user-interface jbutton

我正在尝试创建一个可执行的JButton(打开一个新窗口)选择radiobutton并填充textfiled在特定范围内(textfield应该是1800到2013)。对于radiobuttons我现在做了一个默认选择,但是我无法弄清楚如何返回一个警告文本字段应该被填充(1800和2013之间的数字),如果它在那里则运行该程序。

编辑: 所以如果我的代码是:

JFrame ....
JPanel ....

JTextField txt = new JTextField();
JButton button = new JButton("run");
button.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
//Do things here
}
});
txt.addFocusListener(new FocusListener() {
      ....
}

我该如何使用ItemStateListener。我应该定义一个监听器然后是什么?

1 个答案:

答案 0 :(得分:3)

public void actionPerformed(ActionEvent e)  
{  
    String s = txt.getText();  
    char[] cArr = s.toCharAray();  
    ArrayList<Character> chars = new ArrayList<Character>();  
    for (char c : cArr)  
        if (c.isDigit())  
            chars.add(c);  
    cArr = new char[chars.size()];  
    for (int i = 0;i<chars.size();i++)  
        cArr[i] = char.get(i);  
    s = new String(cArr);  
    txtField.setText(s);  
    if (s.equals(""))  
    {  
        // issue warning  
        return;  
    }  
    int input = Integer.parseInt(s);  
    if (input >=  1800 && input <= 2013)  
    {  
        // do stuff  
    }  
}  

基本上,在文本字段中读取字符串,从中删除所有非数字字符,只有在指定的范围内才能继续。