我有一个有两个面板的JFrame,第一个面板(面板)只有按钮和标签,第二个面板有游戏和键盘输入。第二个面板(panelGame)确实出现在屏幕上,但没有键盘响应,我的太空飞船无法移动,也无法射击。请下载我的项目,并帮助我感谢您的时间和考虑。
答案 0 :(得分:3)
根据问题的描述,可能的原因是您正在使用某种KeyListener
问题是,KeyListener
只会在注册的组件具有键盘焦点并且可以调焦时通知关键事件。
更好的解决方案是使用Key Bindings,它允许您控制应该触发绑定的焦点级别。