一旦用户单击 Tab 键或单击另一个字段,我如何验证用户输入?

How can I validate user input once they click tab key or click on another field?

我正在尝试使用 Netbeans 8.1 为 jTextField 创建一个 actionListener。 我执行了以下操作:创建文本字段,然后右键单击 > 事件 > 操作 > ActionPerformed。
它为我构建了以下代码:

jTextField1.addActionListener(new java.awt.event.ActionListener() {
      public void actionPerformed(java.awt.event.ActionEvent evt) {
          jTextField1ActionPerformed(evt);
      }
});

private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {                                            
    // TODO add your handling code here:
   jTextField1.setText("Box1");
} 

但它不起作用!我曾尝试手动对其进行编码,但仍然无法正常工作。

仅供参考:CheckBox 和 Radio 按钮的 ActionListener - 在同一面板中 - 工作正常,但不是文本字段!

如果您想在单击选项卡或其他字段后进行检查,请使用焦点更改侦听器。

jTextField1.addFocusListener(new java.awt.event.FocusAdapter() {
        public void focusGained(java.awt.event.FocusEvent evt) {
        }
        public void focusLost(java.awt.event.FocusEvent evt) {
          //this will be called on tab i.e when the field looses focus
              jTextField1FocusLost(evt);
        }
    });

private void jTextField1FocusLost(java.awt.event.FocusEvent evt) {                                    
    jTextField1.setText("Box1");
}

您也可以按照@MadProgrammer

的建议使用 InputVerifier