Ajuda com eventos de teclado (sem usar interface gráfica)

1 resposta
A

Prezados amigos,

Estou desenvolvendo um pequeno aplicativo que precisa capturar o código da tecla pressionada pelo usuário, e dependendo da tecla pressionada, executar um dos métodos já definidos anteriormente.

Não vai ser utilizada nenhuma interface gráfica disponível no Java (Swing), ou qualquer tipo de interação através de mouse, apenas pressionamento de teclas (sem caixas de texto, botões, etc…).

Coloco abaixo o código que estou escrevendo, mas não está fazendo o mínimo que seria imprimir a tecla que foi pressionada (para testar se realmente a tecla pressionada está correta).

Alguém poderia dizer o que está errado?

import java.awt.event.*;

public class TestaTecla implements KeyListener {

public void keyPressed(KeyEvent key) {
    System.out.println("Pressionada a tecla: " + key.getKeyChar());
}
public void keyTyped(KeyEvent key) {
    System.out.println("Teclada a tecla: " + key.getKeyChar());
}
public void keyReleased(KeyEvent key) {
    System.out.println("Liberada a tecla: " + key.getKeyChar());
}

public static void main(String[] args) {

        new TestaTecla().keyPressed();
        new TestaTecla().keyTypede();
        new TestaTecla().key.Released();

        // Aqui entraria a chamada para os métodos:
        // Se a tecla pressionada for 13 então executa o método x1
        //    senão
        // executa o método x2

}

}

Agradeço toda e qualquer ajuda possível, pessoal! É fundamental que eu entenda e faça isso funcionar…!!! :shock:

Atenciosamente,

Augusto Cesar

1 Resposta

Grinvon

Tente ver pelo KeyStroke

http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/KeyStroke.html

e

http://www.exampledepot.com/egs/javax.swing/FindKeyBind.html

Criado 4 de dezembro de 2006
Ultima resposta 4 de dez. de 2006
Respostas 1
Participantes 2