代码如下:
text1.addFocusListener(new FocusListener(){
@Override
public void focusGained(FocusEvent e) {
JOptionPane.showMessageDialog(null, "对不起,您输入的");
text.requestFocusInWindow(); //设置焦点为长度有误的文本框中
text.setText(null);
}
@Override
public void focusLost(FocusEvent e) {
}
});
这里的JOptionPane.showMessageDialog(null, "对不起,您输入的");弹框永远弹两次,把这句改成system.out.print语句却又只执行一次,这究竟是JOptionPane.showMessageDialog语句的问题还是哪的问题?求大牛指点,最好能给个简单的代码,谢谢!!
------解决思路----------------------
我觉得你这个代码,会反复的弹出MessageBox, 而不仅仅是两次吧?你把输入检查移动到focusLost()方法中试试。