KeyTypedEvent KeyEvent du mot de Code est toujours 0?

J'ai une application Java Swing dans l'EDI NetBeans.

J'ai fait un formulaire et joint un KeyListener de mes diverses commandes en tant que tel:

    jButton1.addKeyListener(new java.awt.event.KeyAdapter() {
        public void keyTyped(java.awt.event.KeyEvent evt) {
            keyTypedEvent(evt);
        }
    });

et keyTypedEvent est définie comme suit:

private void keyTypedEvent(java.awt.event.KeyEvent evt) 
{                               
System.out.println(evt);
appendDisplay(String.valueOf(evt.getKeyChar()));
} 

J'ai ajouté un println à la evt pour voir ce qui se passe et de vérifier que mon keylistener fonctionne.
Lorsque je créer et exécuter mon application, j'ai réalisé que la sortie semble toujours avoir un keycode = 0

Pour vérifier cela, j'avais changé mon println être evt.getKeyCode() et il est toujours en renvoyant 0.

Je pourrais être complètement mal interprété ce mot de Code, mais j'ai pensé qu'il serait correspondaient avec les valeurs Oracle de la documentation ici:

http://docs.oracle.com/javase/7/docs/api/constant-values.html#java.awt.event.KeyEvent.VK_ESCAPE

Par exemple, VK_ESCAPE a une valeur de 27.

N'utilisez pas de KeyListener. Soit utiliser DocumentListener ou Swing Key bindings.

OriginalL'auteur Rhs | 2013-02-05