class Key extends KeyAdapter{
public void keyTyped(KeyEvent e){
        int keycode = e.getKeyCode();
        System.out.println("keycode = " + keycode);
}
}
我这样写的一个侦听器 为什么无论任何按键  都是  keycode = 0 的结果 
为什么e.getKeyCode()没能给 keycode赋值
哪里出错了求教

解决方案 »

  1.   

    public void keyPressed(KeyEvent e)  
    好像是应该覆盖这个方法。
      

  2.   

    不是传值的问题,JDK上写的很清楚了:(对于 KEY_TYPED 事件,该 keyCode 为 VK_UNDEFINED。)
    public static final int VK_UNDEFINED
    此值用于指出 keyCode 是未知的。KEY_TYPED 事件没有 keyCode 值,用此值代替。
    VK_UNDEFINED这个值应该对应的就是0了,你换成 keyPressed 或者 keyReleased 事件,就不是 0 了
      

  3.   

    感谢passiontank的回答  当时看API时没明白VK_UNDEFINED的意思
    本人新手 还想再问下keyPressed和keyReleased的区别
    我将方法名改为keyReleased有反应 但是改成KeyPressed好像接收不到事件一样
    Press不应该是按下键就产生事件的么