Swing:单击特定按钮时忽略文本框焦点丢失事件

时间:2012-07-20 09:52:38

标签: java swing jtextcomponent documentlistener focuslistener

我有一个swing文本框,其中包含一个在focuslost事件上验证的值。 表单有许多其他控件,包括取消按钮。 我希望跳过验证,以防由于点击取消按钮而丢失焦点。 怎么办呢?

1 个答案:

答案 0 :(得分:3)

我建议删除在focusLost上执行验证的代码,并在DocumentListener中实施验证,或者选择具有内置验证的JFormattedTextField

同样从用户的角度来看,我更喜欢即时验证而不是焦点丢失。当我开始输入时,很高兴看到您的输入何时变得不正确。此外,您可以选择在输入无效时禁用“确定”按钮,并且仅启用“取消”按钮。这当然要求您的验证不会弹出消息,只是在输入字段中/旁边添加一个指示