addKeyListener - Problema

Pessoal, tenho um addKeyListener da seguinte forma:

Meu botão:

Segue meu KeyListener :

[code]/*

  • To change this template, choose Tools | Templates
  • and open the template in the editor.
    */

import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JComponent;

/**
*

  • @author Rodrigo
    */
    public class AvancarListener implements KeyListener {

    JComponent next = null;
    JComponent previous = null;

    public AvancarListener(JComponent previous, JComponent next ) {
    this.previous = previous;
    this.next = next;
    }

    @Override
    public void keyTyped(KeyEvent e) {
    }

    @Override
    public void keyPressed(KeyEvent e) {
    }

    @Override
    public void keyReleased(KeyEvent e) {

     if (e.getKeyCode() == 10) {
         next.requestFocus();
     }
     
     if (e.getKeyCode() == 27) {
         previous.requestFocus();
     }
    

    }
    }
    [/code]

alguem me ajuda por favor?
Por que raios, quando eu aperto a “barra de espaco (e.getKeyCode() == 32)” ele executa o botao?

ja tentei ateh por um IF

 if (e.getKeyCode() == 32) {
        }

O padrão do JButton é ser acionado pela barra de espaço quando ele estiver com o foco.

Há algum problema com esse comportamento? Se precisar mesmo tirar, pode associar uma action que não faz nada pelo InputMap.

entao, gostaria de saber qual a possibilidade de quando a pessoa apertar “enter” se ele estiver com o foco ele acionar… isso é possivel?

Sim. Dá pra setar uma propriedade pelo UIManager pra fazer com que o botão com o foco se torne o default button da janela (o default button de uma janela é aquele que é acionado quando a tecla enter for pressionada).

Executando esta linha antes de instanciar a janela já faz automaticamente com que o botão com foco seja o default button.

Aqui tem uma explicação um pouco mais detalhada com um exemplo de código: http://devsv.wordpress.com/2012/08/20/acionando-botoes-de-um-jframe-com-a-tecla-enter/

Então… meu problema é

meu botao está sendo executado com a tecla enter sem receber nenhuma implementacao… eu sei que isso nao é mágica, mas, qual o “milagre” disso? o que eu fiz que nao me dei conta?

Obrigado por qualquer ajuda!

EDIT: Bom acabei de perceber que isso está ocorrendo por causa do look and feel, agora alguem pode me ajudar em tirar a funcao do enter nos botoes?, tentei fazer o dica acima, mas não funcionou…

Pessoa, segue solução…

jButton1.getInputMap().put(KeyStroke.getKeyStroke("ENTER"), "none");