如何获得关键strock / press的价值?

时间:2012-09-24 15:37:45

标签: java

我需要创建一个程序,在每次按键时触发事件(如键盘记录器)。我无法获得关键价值。这个程序将在每个按键触发事件后面和后面运行。我没有在网上发现任何与此有关的事情。

1 个答案:

答案 0 :(得分:0)

你找不到任何东西是很奇怪的。 您应该使用KeyListener来记录关键事件。如果只有一个事件(例如keyUP,keyDown或keyPress)相关,请使用KeyAdapter

问题是,键侦听器可以附加到任何java屏幕元素,并捕获仅分派给此元素的事件。例如,您可以创建Frame并向其添加键侦听器并捕获具有此帧的所有键事件。

您无法捕获Java应用程序之外的关键事件。

如果您仍想这样做,可以使用以下解决方法。创建透明窗口并向其添加侦听器。监听器应该捕获事件,记录它们,然后使用java.awt.Robot在屏幕上的相同位置模仿它们。

此参考将帮助您创建透明窗口:http://docs.oracle.com/javase/tutorial/uiswing/misc/trans_shaped_windows.html

其他方式是直接或间接使用JNI / JNA。例如xdotools可以帮助你。