首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

请问:为什么不响应键盘事件呢

2011-12-30 
请教:为什么不响应键盘事件呢public void keyPressed(KeyEvent e){Person man(Person)e.getSource()//

请教:为什么不响应键盘事件呢
public void keyPressed(KeyEvent e) 
  {  
  Person man=(Person)e.getSource(); // 返回事件源
  if(e.getKeyCode()==KeyEvent.VK_KP_DOWN) // 判断是否按下了“↓”键
  { 
  goDown(man); 
  }
  if(e.getKeyCode()==KeyEvent.VK_KP_UP) // 判断是否按下了“↑”键
  { 
  goUp(man);
  }
  if(e.getKeyCode()==KeyEvent.VK_KP_LEFT) // 判断是否按下了“←”键
  { 
  goLeft(man);
  }
  if(e.getKeyCode()==KeyEvent.VK_KP_RIGHT) // 判断是否按下了“→”键
  { 
  goRight(man);  
  }
  }
进入调试状态 发现keyPressed方法执行是执行了,但if后面的语句都没执行,莫非if的条件写的不对吗?应该怎么写呢?

[解决办法]

Java code
public void keyPressed(KeyEvent e)   {        Person man=(Person)e.getSource();      // 返回事件源       int keyCode=e.getKeyCode();       if(e.getKeyCode()==KeyEvent.VK_KP_DOWN)              // 判断是否按下了“↓”键         {             goDown(man);         }       if(e.getKeyCode()==KeyEvent.VK_KP_UP)              // 判断是否按下了“↑”键         {             goUp(man);         }       if(e.getKeyCode()==KeyEvent.VK_KP_LEFT)              // 判断是否按下了“←”键         {             goLeft(man);         }       if(keyCode==KeyEvent.VK_RIGHT)                // 判断是否按下了“→”键,static int VK_RIGHT           用于非数字键盘向右方向键的常量, 其他的你改一下试试。      {           goRight(man);          }   } 

热点排行