对于我的程序,我需要注册在没有应用程序焦点的情况下发生的关键事件。 (即关注焦点的互联网浏览器)我一直在寻找,人们说你可以用jni做到这一点;但是,如果没有它,有没有呢?
有人能给我一个非常好的jni示例的链接吗?到目前为止我看过的那些并不是很有帮助
答案 0 :(得分:2)
JIntellitype(这是一个Apache 2.0许可证)将在Windows中为您执行此操作。 JxGrabKey似乎是Linux的有效解决方案。我不知道跨平台解决方案。 (这些仍然使用JNI,但他们会为你抽象细节)
答案 1 :(得分:1)
您想创建一个密钥记录器吗?不,如果没有JNI或使用一些将JNI包裹起来的库,这是不可能的。
Java在您自己的Frames / Windows之外执行操作的唯一方法是使用java.awt.Robot,但这只允许截图并将输入发送到其他程序,而不是捕获输入。