2

我正在尝试使用 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");
} 

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

仅供参考:复选框和单选按钮的 ActionListener(在同一个面板中)工作正常,但不是文本字段!

4

1 回答 1

1

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

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

于 2016-04-15T10:16:17.837 回答