JTextField executar um metodo quando pressionada tecla

estou desenvolvendo um sisteminha em java, e nos meus campos JTextField gostaria que ao usuario digitar o valor no campo e pressionar
ENTER ou TAB o programa validasse o campo.
Alguém ja fez isso? Sabe como? Como Faria?
Valeuz :-o

Meu amigo é so implementar o KeyListerner e adicionar o

JtextField.addKeyListener();

e no metodo KeyPress


	public void keyPressed(KeyEvent e) {
              if(e.getSource() == JtextField){
		if (e.getKeyCode() == KeyEvent.VK_ENTER) { 
                      //Coloque o metodo de validação aqui
		}
             }
	}

Espero ter ajudado…

Qualquer duvida Post ae…

eu queria que funcionasse assim:

private void cdUsuarioKeyPressed(java.awt.event.KeyEvent evt) {                                     
        if (evt.getKeyCode() == KeyEvent.VK_ENTER || evt.getKeyCode() == KeyEvent.VK_TAB) {
            validaUsuario();
        }
    } 

só que desse jeito só funciona o ENTER, o TAB simplesmente nao pega

  1. Programe o evento ActionPerfomed do TextField para capturar o ENTER.
  2. Programe o evento FocusLost do TextField para capturar o TAB.
  3. Apartir de ambos chame o ValidaUsuario().

se o usar o lostfocus a mensagem aparece várias vezes…

Resolvi da seguinte maneira:

  1. setei a propriedade:
    cdUsuario.setFocusTraversalKeysEnabled(false);

  2. no meu metodo actionPerformed do campo eu chamo o metodo
    que valida o Usuario.

  3. se o usuario for valido passa o foco para o proximo campo, senão da uma mensagem ( agora mostra uma vez só ) e seta o foco para o cdUsuario.

Pra isso voce pode utilizar o método focusLost() do objeto JTextField.

Abraços.