KeyTypedEvent KeyCode de KeyEvent é sempre 0?
Eu tenho um aplicativo Java Swing no NetBeans IDE.
Eu fiz um formulário e anexei um KeyListener aos meus vários controles como tal:
jButton1.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyTyped(java.awt.event.KeyEvent evt) {
keyTypedEvent(evt);
}
});
ekeyTypedEvent
é definido como tal:
private void keyTypedEvent(java.awt.event.KeyEvent evt)
{
System.out.println(evt);
appendDisplay(String.valueOf(evt.getKeyChar()));
}
Eu adicionei umprintln
aoevt
para ver o que acontece e para verificar se meu keylistener funciona. Quando eu construo e executo meu aplicativo, percebo que a saída sempre parece ter umkeycode = 0
Para verificar isso, eu mudei meu println para serevt.getKeyCode()
e está sempre retornando 0.
Eu poderia estar interpretando mal o que o KeyCode faz, mas achei que seria melhor responder aos valores da documentação do Oracle aqui:
http://docs.oracle.com/javase/7/docs/api/constant-values.html#java.awt.event.KeyEvent.VK_ESCAPE
Por exemplo, VK_ESCAPE tem um valor de 27.