有没有办法在不将鼠标和键盘事件从系统队列中取出的情况下在整个系统范围内监听鼠标和键盘事件?
例如有没有办法设置一个恶魔,比方说,它会监听并报告每个键盘和鼠标事件?
最佳答案
使用纯 Java 是不可能的。但是您可以使用 JNI(Java native 接口(interface)),它处理用 C++ 编写并在 native 编译的代码。所以,通过这种方式,您可以用 C++ 编写 Global KeyListener,让 Java 使用它。
有一个针对 Linux、OS X 和 Windows 实现此功能的活跃项目:http://code.google.com/p/jnativehook/
关于java系统范围的键盘和鼠标状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7489037/