Combinação de teclas

5 respostas
Luiz_Gustavo

Galera… como faço pra identificar uma combinaçãod e teclas, como por exemplo “ALT+N”?

[]'s

5 Respostas

correainfo

Implement o metod KeyListener na classe e esse é o um exemplo q eu
utilizo para a tecla esc

espero ter ajudado

public void keyPressed(KeyEvent arg0) {
        if(arg0.getKeyCode() == KeyEvent.VK_ESCAPE ){
      
}
Luiz_Gustavo
correainfo:
Implement o metod KeyListener na classe e esse é o um exemplo q eu utilizo para a tecla esc

espero ter ajudado

public void keyPressed(KeyEvent arg0) {
        if(arg0.getKeyCode() == KeyEvent.VK_ESCAPE ){
      
}

opa...
então colega... eu geralmente uso esse tipo de abordagem, mas funciona para identificar uma tecla....
precisava identificar quando uma sequência é pressionada....

ex: se o foco estiver em um JTextField, e o usuário pressionar a tecla "N" no JTextField, o formulário entra em modo de edição.... mas se o usuário pressionar a sequência ALT+N, o formulário precisa entrar em modo de inserção (nesse caso, "N" seria o Mnemonic do botão "Novo").

se souber de algo dá um toque

[]'s

keller

Acho que seria algo como isso…

private KeyListener klMenu = new KeyListener(){
      public void keyTyped(KeyEvent e){/*nothing to do?*/}
      public void keyReleased(KeyEvent e){/*nothing to do?*/}
      public void keyPressed(KeyEvent e){
         if(e.isAltDown() && e.getKeyCode() == KeyEvent.VK_N ){
            System.out.println("ALT+N");
         }  
      }
   };
toolBar.addKeyListener( klMenu );

Valeu? Até… :thumbup:
[s]

Luiz_Gustavo

gui:
Acho que seria algo como isso…

private KeyListener klMenu = new KeyListener(){
      public void keyTyped(KeyEvent e){/*nothing to do?*/}
      public void keyReleased(KeyEvent e){/*nothing to do?*/}
      public void keyPressed(KeyEvent e){
         if(e.isAltDown() && e.getKeyCode() == KeyEvent.VK_N ){
            System.out.println("ALT+N");
         }  
      }
   };
toolBar.addKeyListener( klMenu );

Valeu? Até… :thumbup:
[s]

Perfeito… era exatamente disso que eu estava precisando… muito obrigado…
No meu caso… sempre que o Alt estiver pressionado, e for combinado com uma tecla, eu devo desconsiderar a tecla pressionada junto com o Alt, caso contrário (se somente a tecla for pressionada, sem o Alt, o formulário deve entrar em modo de edição)

tudo que precisei fazer foi:

if(!evt.isAltDown()){
        btnEditar.doClick();
}

vlw maninho!!!

:thumbup:

jmendes

Olá pessoal…

Como que eu faço p/ fazer o mesmo usando um menu.

Ex.:

menuitem.setAccelerator( KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0) ); (tecla ESC)

Tem como vc’s me ajudarem?

Criado 28 de março de 2006
Ultima resposta 17 de mai. de 2006
Respostas 5
Participantes 4