当我删除所有MouseListener组件并运行applet时,我必须单击它以使其聚焦,然后KeyListener完美地工作。为了解决这个问题,我添加了一个“开始页面”,您必须在游戏运行之前单击“开始”。这将使applet集中注意力,直到玩家同时准备好才开始。我添加了MouseListener,它工作得很好,但现在KeyListener根本没有注册。我找不到原因,但我想它再次与焦点有关。任何人都知道应该在这做什么?
可以在此处找到代码:http://pastebin.com/LDxtk878
谢谢!
答案 0 :(得分:2)
在不检查代码的所有322行的情况下,您可以查看文章How to Write a Key Listener,并注意以下部分“注意:要触发键盘事件,组件必须具有键盘焦点。”
另外,请考虑扩展JApplet
作为替代方案。