Ao clicar em uma tecla, substituir a tecla pressionada por outra
7 respostas
C
cesarnascimento90
Olá amigos. A tempos acompanho o Guj, sem estar cadastrado mas agora preciso de ajuda.
Sou iniciante na linguagem java e queria criar um programa que quando o usúario pressionasse uma tecla, ALT + 1 por exemplo,o programa substituísse esse ALT + 1 e escrevesse X no lugar. Basicamente é quando o usuário pressionar uma tecla, o programa vai “escrever” outra.
Antes de criar o tópico eu pesquisei e vim que existia o modo pelo e.getkeycode: > > if (e.getKeyCode() == KeyEvent.VK_ENTER) // Mas como ficaria ALT + 1? E também, como o programa iria escrever a outra letra, que no caso seria o X? Tudo isso eu iria estar com o programa minimizado, digitando no bloco de notas.
Não peço o código completo, peço instruções de como fazer. Meu objetivo é aprender mais!!
Agradeço a todos.
if (e.isAltDown() && e.getKeyCode() == KeyEvent.VK_1)
L
Luis_Augusto_Santos1 like
O grande problema disso é que a captura das teclas digitadas é feito, primeiramente, pelo SO.
Com certeza existe alguma maneira de você burlar isso, mas, um sinal de interrupção prioritária, como o CTRL + ALT + DEL, ficaria como?
Com a janela do teu sistema aberta, com certeza seria bem mais fácil, com ela minimizada, aí a coisa complica, mesmo seguindo a orientação do @Rodrigo_Void
C
cesarnascimento90
Meu objetivo seria substituir as teclas do numlock ou qualquer outra tecla por símbolos matemáticos basicamente. Vc acha que seria possível, mesmo com o programa minimizado?
L
Luis_Augusto_Santos
Eu acredito que seja possível, só não tenho ideia de como fazer, caso o programa esteja minimizado.
Com o programa aberto, você vai identificar o foco no frame ou dialog mais externo e, aí, fica fácil fazer. Com ele fechado, qual seria a referência?
Rodrigo_Void
Cara, minimizado é punk. Pq normalmente vc captura o evento de um componente, mas no caso do minimizado n teria componente, teria que capturar o pressionamento de teclas no SO. Isso me cheira a Keylogger, o antivirus pode reclamar. Dá uma estudada na api Robot.