Java为什么这个键盘事件不行? 5
staticJFrameframe=newJFrame("PlaneBattle!");在Layout类中有个静态的窗体publicstaticvoidmove(){Sy...
static JFrame frame=new JFrame("Plane Battle!");
在Layout类中有个静态的窗体
public static void move(){
System.out.println("move");
Layout.frame.addKeyListener(new KeyListener(){
public void keyPressed(KeyEvent e) {
System.out.println("press");
int kt=e.getKeyCode();
if(x<0){
x=0;
}
if(x>700){
x=700;
}
if(kt==KeyEvent.VK_LEFT){
System.out.println("left");
x-=15;
l.setLocation(x,y);
}
if(kt==KeyEvent.VK_RIGHT){
System.out.println("right");
x+=15;
l.setLocation(x,y);
}
}
public void keyTyped(KeyEvent e) {}
public void keyReleased(KeyEvent e) {}
});
}
在Plane类中有个move方法,里面有个键盘监听事件。
运行到那里的时候,控制台会输出“move”但没有“press“,按按键更没有反应。
请问这是什么问题呢? 展开
在Layout类中有个静态的窗体
public static void move(){
System.out.println("move");
Layout.frame.addKeyListener(new KeyListener(){
public void keyPressed(KeyEvent e) {
System.out.println("press");
int kt=e.getKeyCode();
if(x<0){
x=0;
}
if(x>700){
x=700;
}
if(kt==KeyEvent.VK_LEFT){
System.out.println("left");
x-=15;
l.setLocation(x,y);
}
if(kt==KeyEvent.VK_RIGHT){
System.out.println("right");
x+=15;
l.setLocation(x,y);
}
}
public void keyTyped(KeyEvent e) {}
public void keyReleased(KeyEvent e) {}
});
}
在Plane类中有个move方法,里面有个键盘监听事件。
运行到那里的时候,控制台会输出“move”但没有“press“,按按键更没有反应。
请问这是什么问题呢? 展开
2015-11-15
展开全部
键盘事件,还有组件的焦点有关的。。。。。。。。。。看看详细的程序。。。。。。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询