Como fazer o programa detectar pressionamento de teclas?

Olá pessoal,

Eu fiz um aplicativo do tipo editor de textos simples, uma cópia melhorada do Bloco de Notas. Quer dizer, até seria melhor, se eu conseguisse também fazê-lo executar algumas funções que o Bloco de Notas executa, como por exemplo, pressionar F3 pra procurar uma (próxima) palavra pelo texto. No programa já tem no menu a opção “Pesquisar” e “Pesquisar próxima…” mas o problema é que eu não sei como fazer o programa reconhecer pressionamento de teclas durante a execução.

Já tentei fazer o JFrame implementar KeyListener ou KeyAdapter, implementei todos os métodos necessários keyPressed(), keyReleased() e keyTyped(), registrei um tratador de eventos com addKeyListener(this) dentro do construtor do JFrame, mas não adianta nada, o programa simplesmente ignora o KeyListener.

Alguém sabe o que eu estou fazendo de errado?

Obrigado!

É o mesmo princípio dos botões de uma calculadora:
http://www.guj.com.br/posts/list/140986.java

Obrigado pela ajuda. :smiley:

Só não entendi por que no livro “Java: Como Programar” dos Deitel, o código é muito mais simples e funciona. Tentei fazer como no livro, e não rolou :cry: , não entendi… mas vou seguir o exemplo do link acima.

no livro por acaso o componente não é um JMenuItem?
pois se for aí é só usar o setAccelerator