我有一个 3D 游戏,每次移动光标时,我都希望它重置到中间。问题是 robot.mouseMove() 调用 MouseEvent(它确实有意义)并重置位置,所以我无法旋转。
谢谢!
最佳答案
我更喜欢下面这样的代码:
component.removeMouseListener(...);
Robot.doSomething();
component.addMouseListener(...);
而不是设置标志。使用这种方法,管理监听器的代码位于代码中的一个位置。
如果你使用一个标志,你需要
- 定义标志变量,
- 设置/重置变量
- 测试变量
所以你最终会在类(class)的多个地方有代码。
编辑:
关于将机器人添加到事件队列末尾的好处。因此,然后我会将添加 MouseListener 的代码包装回 SwingUtilities.invokeLater() 中的组件
关于java - 防止 robot.mouseMove 生成 MouseEvent?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18881869/