Tratar Eventos de teclas com modificadores por InputMap

4 respostas
lucas_guj

Olá a todos,

Gostaria de saber como tratar eventos de teclas com modificadores por InputMap e ActionMap, tipo assim:

Eu aperto o tecla menos, mais, aspas dupla do teclado, ou entao sinal de interrogação, sinal agudo, vírgula, ponto final, etc.( algumas dessas teclas precisam do shift apertado junto), e exibir isso em uma área de texto. Estou pedindo um exemplo que acredito que com exemplo eu consiga.

4 Respostas

lucas_guj

Nobody?

E

Dica - faça um programa bem bobinho que tenha um KeyListener em um JTextField (ah ha, você não esperava isso de mim, que sou contra usar KeyListener a torto e a direito, porque normalmente não funciona) e imprima quais são os códigos gerados por essas teclas chatinhas.

Uma vez feito isso, você pode usar os KeyStrokes corretos.

lucas_guj

entanglement:
Dica - faça um programa bem bobinho que tenha um KeyListener em um JTextField (ah ha, você não esperava isso de mim, que sou contra usar KeyListener a torto e a direito, porque normalmente não funciona) e imprima quais são os códigos gerados por essas teclas chatinhas.

Uma vez feito isso, você pode usar os KeyStrokes corretos.

:shock: Pq você sugere isso? Sugere ao invés de eu usar o JTextArea, usar um JTextField para fazer o mesmo, configurando-o como não editável e digitando e exibindo as teclas nele?

E

Use qualquer coisa que atenda a essas teclas (JTextField, JTextArea, JLabel ou sei lá o quê - basta ter um KeyListener funcionando).
O que eu disse para fazer é um programa do tipo “use para testar, e jogue fora” (embora, obviamente, você não vá querer jogar fora esse programinha de teste :slight_smile: )
A saída do programa, provavelmente, é só um toString do evento que foi capturado pelo KeyListener, e desse toString você pode verificar qual é o KeyStroke correspondente.

Criado 21 de maio de 2012
Ultima resposta 23 de mai. de 2012
Respostas 4
Participantes 2