2015-08-09 2 views
2

Я пытаюсь создать actionListener для jTextField с помощью Netbeans 8.1. Я сделал следующее: создал текстовое поле, затем щелкните правой кнопкой мыши> «События»> «Действие»> «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"); 
} 

, но он не работает! Я попытался его вручную закодировать, но все равно не работал.

FYI: ActionListener для кнопок CheckBox и Radio - на той же панели - работает нормально, но не из текстовых полей!

+1

The 'ActionListener' для' JTextField' будет срабатывать, когда пользователь нажимает клавишу [Enter], а поле имеет фокус клавиатуры – MadProgrammer

+0

вы правильно ! @MadProgrammer. Спасибо! поэтому вопрос будет следующим: как я могу проверять ввод пользователя после нажатия клавиши вкладок или щелчка на другом поле? –

+2

Используйте «InputVerifer», например, см. [Validating Input] (http://docs.oracle.com/javase/tutorial/uiswing/misc/focus.html#inputVerification) – MadProgrammer

ответ

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"); 
} 

вы можете использовать InputVerifier также как предложено @MadProgrammer

+0

+1 Его работа для ввода табуляции, но я ищу, пока пользователь нажимает кнопку или вводит кнопку, тогда значение JTextField должно быть проверено. –

 Смежные вопросы

  • Нет связанных вопросов^_^