Java Swing中的全局键盘记录程序



我想在Java Swing中创建键盘记录程序。当焦点在Swing Window上时,我可以制作一个简单的键盘记录程序,捕捉击键并将其写入日志文件。由于焦点必须在窗口上,是否可以使不可见JFrame,即始终在顶部?类似这样的东西:

public class Logger extends JFrame implements KeyListener

logger.setVisible(false);
logger.setAlwaysOnTop(true);

这在Java中可能吗?

所以,您想要一个记录击键的键记录器,即使重点不在Java Swing窗口上,对吧?Java本身不能做到这一点,但Java Native Interface(JNI(可以。您可以在谷歌上搜索"Java系统挂钩"并从Github下载JAR。(https://github.com/kristian/system-hook/releases)总之,只要程序运行,它就会一直记录你的键盘,而不管你关注的是哪个窗口

我使用它的方式:我写了一个程序,在我玩游戏的时候一直运行,它可以打印出我在游戏中按下的任何键。