我有一个swing文本框,其中包含一个在focuslost事件上验证的值。 表单有许多其他控件,包括取消按钮。 我希望跳过验证,以防由于点击取消按钮而丢失焦点。 怎么办呢?
答案 0 :(得分:3)
我建议删除在focusLost
上执行验证的代码,并在DocumentListener
中实施验证,或者选择具有内置验证的JFormattedTextField
。
同样从用户的角度来看,我更喜欢即时验证而不是焦点丢失。当我开始输入时,很高兴看到您的输入何时变得不正确。此外,您可以选择在输入无效时禁用“确定”按钮,并且仅启用“取消”按钮。这当然要求您的验证不会弹出消息,只是在输入字段中/旁边添加一个指示