KeyListener

quando eu uso um keylistener, como é que eu faço pra saber se uma determinada tecla foi pressionada?
eu fiz isso aqui:

[code]janela.addKeyListener(new KeyListener(){

        public void keyTyped(KeyEvent e) {
            FazerMovimento(e);
        }

        public void keyPressed(KeyEvent e) {

        }

        public void keyReleased(KeyEvent e) {
        }
    });[/code]

private void FazerMovimento(KeyEvent e){ if(e.getKeyCode()== KeyEvent.VK_RIGHT){ x+=10; quadro.setLocation(x,y); } }

janela é um java.awt.Frame e o quadro é um java.awt.Canvas

acho que o problema está no getKeyCode() porque sem aquilo qualquer tecla funciona.

O seu getKeyCode()== KeyEvent.VK_RIGHT esta falando que ele só vai funcionar quando vc apertar a tecla RIGHT(seta para direita) ^^

Isso é apenas um adendo na sua dúvida
http://emdia.wordpress.com/2008/11/06/jcombobox-listener/

Então, é exatamente isso que eu quero. Mas não é isso que acontece. E isso acontece com todas as teclas que eu defino. E quando eu tiro esse if, o Canvas se movimenta pra direita com qualquer tecla, exceto com as direcionais. Você sabe porque?

Ou seja, para eventos keyTyped, o valor é sempre indefinido. A solução é simplesmente mover o código que está dentro do método keyTyped para dentro do método keyPressed.

Ae deu certo. Valeu mesmo.