Algue saberia me dizer se há algum jeito de criar atalhos no java sem precisar usar teclas de controle como ALT,CTRL e SHIFT ?
Ate onde sei o setMnemonic só funciona com elas, gostaria de saber se algum jeito direto de se fazer isso, sem precisar replicar codigo em todos os componentes, para ser mais exato a intenção é usar as teclas F1~F12 diretamente.
Obrigado.
Chame o evento formKeyPressed do JFrame.
Exemplo:
private void formKeyPressed(java.awt.event.KeyEvent evt) {
atalhos(evt);
}
Código do método atalhos.
[code] private void atalhos(KeyEvent evt){
/Mostra a key da tecla pressionada/
//System.out.println(evt.getKeyCode());
//Condição para F2
if (evt.getKeyCode() == 113) {
//Condição para F3
} else if (evt.getKeyCode() == 114) {
//Condição para F4
}else if (evt.getKeyCode() == 115){
//Condição para F5
}else if (evt.getKeyCode() == 116){
//Condição para F6
}else if (evt.getKeyCode() == 117){
//Condição para F7
}else if (evt.getKeyCode() == 118){
//Condição para F8
}else if (evt.getKeyCode() == 119){
//Condição para F9
}else if (evt.getKeyCode() == 120){
}
}[/code]
Vc também pode usar o switch case para fazer isso.
O problema do KeyListener é que teria que adicioná-lo em todos os componentes.
Sim… tem esse problema…
Coloquei esse só pra ele seguir de exemplo mesmo… os links que vc passou são bem melhores… a maneira como o Vini colocou no post é muito boa.
[quote=joyle]Sim… tem esse problema…
Coloquei esse só pra ele seguir de exemplo mesmo… os links que vc passou são bem melhores… a maneira como o Vini colocou no post é muito boa.[/quote]
Eu falei mais porque eu já usei o KeyListener desta forma. Quase chorei quando descobri o InputMap. :lol:
Muito obrigado, os links ajudaram muito.
Tópico fechado !!!