我无法在JFrame中获得键盘输入?

时间:2013-12-29 06:25:50

标签: java swing jframe jpanel keyboard-events

我有一个有两个面板的JFrame,第一个面板(面板)只有按钮和标签,第二个面板有游戏和键盘输入。第二个面板(panelGame)确实出现在屏幕上,但没有键盘响应,我的太空飞船无法移动,也无法射击。请下载我的项目,并帮助我感谢您的时间和考虑。

https://www.mediafire.com/?wjz6fm3z4567bq8

1 个答案:

答案 0 :(得分:3)

根据问题的描述,可能的原因是您正在使用某种KeyListener

问题是,KeyListener只会在注册的组件具有键盘焦点并且可以调焦时通知关键事件。

更好的解决方案是使用Key Bindings,它允许您控制应该触发绑定的焦点级别。