Java 添加MouseListener会中断Keylistener

Java 添加MouseListener会中断Keylistener,java,applet,keylistener,mouselistener,Java,Applet,Keylistener,Mouselistener,当我删除所有MouseListener组件并运行小程序时,我必须单击它以使其具有焦点,然后KeyListener可以完美地工作。为了解决这个问题,我添加了一个“开始页面”,在游戏运行之前,你必须点击开始。这将使小程序获得焦点,直到播放器同时准备好后才能启动。我添加了MouseListener,效果很好,但现在KeyListener根本不注册。我不知道为什么,但我想这又和焦点有关。有人知道这里应该做什么吗 代码可在此处找到: 谢谢 在不检查全部322行代码的情况下,您可能会在阅读本文时注意以下部分

当我删除所有MouseListener组件并运行小程序时,我必须单击它以使其具有焦点,然后KeyListener可以完美地工作。为了解决这个问题,我添加了一个“开始页面”,在游戏运行之前,你必须点击开始。这将使小程序获得焦点,直到播放器同时准备好后才能启动。我添加了MouseListener,效果很好,但现在KeyListener根本不注册。我不知道为什么,但我想这又和焦点有关。有人知道这里应该做什么吗

代码可在此处找到:


谢谢

在不检查全部322行代码的情况下,您可能会在阅读本文时注意以下部分:“注意:要触发键盘事件,组件必须具有键盘焦点。”


此外,考虑扩展<代码> JApplet <代码>,作为替代。

我添加了这个。StFooValube(true)在i()中添加侦听器之后,解决了这个问题。为什么在有鼠标侦听器的情况下必须执行此操作?鼠标单击会改变焦点。