Problemas com a tecla Enter no Look and Feel "Nimbus"

5 respostas
sergio.danilo
Galera, estou com uma aplicação que usa o LAF [i]Nimbus[/i]. Meu problema é o seguinte, os JButtons simplesmente não são ativados quando o focus está sobre eles e pressiono a tecla Enter, somente com a tecla de Espaço que os botões são ativados.

Isso é default desse LAF? Tem como resolver isso e restaurar a propriedade padrão do Enter?

5 Respostas

laudenpower

Na verdade esse é o comportamento da classe JButton ele por padrão não é ativado com o pressionamento do enter nesse caso você deve alterar o método selected para que ele trabalhe com o enter, porém esse método define o botão como selecionado por default ou seja toda vez que for pressionado o enter ele será ativado.

sergio.danilo

Eu entendi parcialmente o que vc quis dizer… mas eu tenho vários botões na minha aplicação, eu só queria que quando um deles recebesse o focus e eu apertasse enter, o botao fosse pressionado!

laudenpower

Tente isso na classe que implementa KeyListener no método keyPressed(KeyEvent e):

if (JButton1.hasFocus){
    if (e.getKeyCode == KeyEvent.VK_ENTER){
        JButton1.doClick()
    }
}
sergio.danilo

Problema resolvido!

laudenpower

Qual a forma que você utilizou?

Criado 4 de setembro de 2009
Ultima resposta 4 de set. de 2009
Respostas 5
Participantes 2