Estou desenvolvendo um sistema, no mesmo existe uma tela de vendas, nessa tela no momento que o usuário apertar a tecla F1 outra tela terá que abrir automaticamente. Já fiz isso só que em um item de menu, agr não estou conseguindo fazer, no momento estou em um frame que não possui um menu e nem item de menu e só apenas um label indicando que se ele aperta F1 irá abrir outra tela(no caso, a tela de clientes). Como posso fazer isso ?
Desde já, muito obrigado.
Colocando teclas de atalhos no seu sistema
D
5 Respostas
D
Pesquise por ActionMap e InputMap.
Se você fizer uma pesquisa correta, conseguirá encontrar alguns tópicos do guj contendo a resposta para o que você quer.
D
Muito obrigado, irei pesquisar.
D
Opa, boa vontade e interesse são ótimas formas de começar algo.
Seguinte, segue o link para a melhor resposta para o assunto.
D
Estava lendo esse nesse exato momento, mais uma vez, muito obrigado.
Q
Cara, ha algum tempo atras, estive com o mesmo problema, pesquisei aki mesmo jo GUJ e encontrei um metodo muito bom:
public void PegarTeclaPressionada(){
EventQueue queue = new EventQueue(){
protected void dispatchEvent(AWTEvent event){
super.dispatchEvent(event);
String a[];
String tecla[];
if (!event.paramString().equals("")) {
if (event.paramString().substring(0, 5).equals("KEY_P")) {
a = event.paramString().split(",");
tecla = a[1].split("=");
System.out.println(tecla[1]);
switch (Integer.parseInt(tecla[1])) {
case 9: //TECLA TAB
case 10:
//digite ação
break;
case 38:
//digite ação
break;
case 40:
//digite ação
break;
case 112: //F1
//digite ação
break;
case 27: //ESC
//digite ação
break;
case 113: //F2
//digite ação
break;
case 114: //F3
//digite ação
break;
case 115: //F4
//digite ação
break;
case 116: //F5
//digite ação
break;
case 117: //F6
//digite ação
case 118: //F7
//digite ação
case 119: //F8
//digite ação
case 120: //F9
//digite ação
case 121: //F10
//digite ação
case 122: //F11
//digite ação
case 123: //F12
//digite ação
break;
default:
break;
}
}
}
}
};
Toolkit.getDefaultToolkit().getSystemEventQueue().push(queue);
}
Voce deve chamar esse metodo no seu construtor,
a partir dai, qualquer tecla q vc pressionar, vai aparecer no console, atraves desta linha:
System.out.println(tecla[1]);
vc pega o numero e coloca no “case” e poe seu codigo equivalente a tecla pressionada.
Espero q te sirva.
Criado 4 de julho de 2013
Ultima resposta 7 de jul. de 2013
Respostas 5
Participantes 3