java - 有没有简单的方法可以在没有应用程序焦点的情况下检测 Java 中按下并按住的键盘和鼠标按钮?

标签 java mouseevent

我正在尝试用Java编写非常简单的程序 - 当用户单击鼠标左键时,它将自动单击直到释放,但前提是之前使用键盘键进行切换。我对这个自动触发部分没有问题,但我不知道如何在我的应用程序没有焦点时检测键盘按下和鼠标按钮按下。有没有一些简单的方法可以做到这一点?

最佳答案

旁注 - 您是否正在为游戏创建宏?

您可以下载jNativeHook https://code.google.com/p/jnativehook/并将全局监听器 Hook 到 globalScreen,这样无论您是否关注应用程序都没关系。

然后你就可以像普通的 swing/fx 监听器一样使用它。

注意

确保正确取消 Hook ,否则在一些 Hook 后,它可能会被阻止,并且您必须重新启动电脑才能再次 Hook (在未来版本中修复)。

如果您正在为游戏编写宏,则在专注于窗口时可能会遇到问题 - 一些全屏游戏,甚至在窗口模式下,至少从我个人的经验来看是这样。机器人在某些游戏中也会出现执行事件失败的情况。

关于java - 有没有简单的方法可以在没有应用程序焦点的情况下检测 Java 中按下并按住的键盘和鼠标按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24810859/

相关文章:

java - 爆炸式发展是什么意思? (在 Java 中)

java - Wicket 和 Java : Changes to page do not persist

java - Log 和 Logger 的区别?

javascript - 检测鼠标方向 - JavaScript

javascript - 在 JavaScript 中使用鼠标事件在 Canvas 上绘制直线

java - 单元测试 App 引擎 - Eclipse - Maven

java - java反射的问题

java - 机器人类 mouseWheel 不工作

c++ - 如何仅在定义的时间获取事件?

c# - 在 Listbox.ItemTemplate (WPF C#) 中查找控件