我有一个public class JdbDateTextField extends JTextField
and 在我添加的构造函数中this.setInputVerifier(new ValidDateOrEmptyVerifier());
。
我class ValidDateOrEmptyVerifier extends InputVerifier
用来验证输入的格式。
如果输入格式错误并且用户失去了 的焦点JdbDateTextField
,我返回false
并且ValidDateOrEmptyVerifier
再次获得焦点JdbDateTextField
。
如果用户从 切换JdbDateTextField
到另一个文本字段或按下按钮,则此方法有效。如果按下按钮并且输入格式错误,则不执行按钮操作,焦点仍位于JdbDateTextField
.
这正是我想要的。JdbDateTextField
用户在输入有效字符串之前不能离开。
问题是它JdbDateTextField
在一个 JPanel 中,JTabbedPane
所以我有一个带有多个选项卡的 GUI。
如果我JdbDateTextField
选择了,输入无效的输入,然后直接单击另一个选项卡,它仍然会切换选项卡。所以我能够提供错误的输入。
我的问题是:
有没有办法执行输入验证,它不允许在它之前执行任何其他事件true