**结束。**此问题需要详细的调试信息。它目前不接受答案。
**想改进这个问题吗?**更新问题,使其成为堆栈溢出的主题。
22小时前关门了。
改进这个问题
我目前正在开发一个javafx突破游戏,并且已经建立了一个移动系统,当我使用public userkeyinteraction方法按下左箭头键和右箭头键时,可以设置 bat 对象的速度。这个方法似乎工作良好,但我也有一个按键释放的方法,当用户不再按下任何一个箭头,不仅是这个方法对 bat 没有影响(它不会停止时,按键释放),但按键释放事件是没有被检测到。
public void keyReleased(KeyEvent event)
{
Debug.trace("released");
switch(event.getCode())
{
case LEFT:
model.setBatVel(0);
break;
case RIGHT:
model.setBatVel(0);
break;
}
}
正如您在上面所看到的,我使用debug.trace将单词“released”打印到终端,每当释放一个键时,终端在任何时候都不会显示该消息,因此显然从未检测到keyreased事件。抱歉,如果这是一个明显的答案,我从来没有使用过java之前,我觉得有点困惑,如果我是诚实的。
1条答案
按热度按时间fzwojiic1#
请尝试:setfocustraversable(true)和requestfocus();在你看来
代码如下: