Tag: jna keylistener

使用JNA的“global”KeyListener

我在Windows下运行程序的计划制作,可以在不同的键上运行不同的“宏”在后台运行。 问题是 – 当应用程序没有被聚焦时,如何使Java听到按下的键。 我发现很多意见认为这是不可能的。 但我也发现这是斯特凡诺在这里写的。 对我来说,这个解决方案不够好,至少没有一个重要的信息。 如果没有按下键,函数MsgWaitForMultipleObjects()将返回一个值…这没关系。 按键后,它返回不同的值……如果按键事件发生后函数不会返回相同的值,那就没问题。 这是测试这个的线程: public class KeyListener extends Thread { /** * Constructor */ public KeyListener() { super(); } /** * RUN method */ @Override public void run() { int x; User32 user32 = User32.INSTANCE; boolean res = user32.RegisterHotKey(Pointer.NULL, 1, User32.MOD_ALT | User32.MOD_CONTROL, WinKeys.VK_X); if (!res) { System.out.println(“Couldn’t register […]