我(ab)使用Java的Robot类在浏览器窗口中自动执行某些单击任务.在第一次单击时,Java应用程序失去焦点.如果机器人开始行为不端,我想终止程序.但是,我不能轻易这样做,因为机器人可以控制我的鼠标.
我想做的是让我的程序听取我发出的某种信号告诉它退出.例如,当按下"escape"键时,程序可以退出.但是,当应用程序不在焦点时,我不知道如何监听击键.
我在OSX 10.9中运行Java SE 6.
在这种情况下,我怎么能终止我的程序?
编辑:发布此内容后,我发现了一个解决同一问题的相关问题:在Java中收听没有焦点的输入.(但是,这并不完全重复,因为我的问题有点广泛.)
我用Java制作了一个简单的媒体播放器,但是我想记录诸如Ctrl+的全局按键,P以暂停/恢复当前正在播放的音乐,而JFrame没有聚焦,但是由于JVM安全问题,似乎无法实现。
我遇到了JNativeHook,但是我只想为Windows实现我自己的方法。请建议如何做以及从哪里开始?