2015-05-31 78 views
2

我试图在我的project.i使用jnativehook库希望得到一个简单的数据(如鼠标单击:2),而不是该jnativehook长登录电子数据产生,如:如何从JNativeHook库中删除记录数据

2015年5月31日下午9:39:04 org.jnativehook.GlobalScreen $ NativeHookThread启用 INFO:process_button_pressed [339]:按钮1按下2次。 (293,661)

2015年5月31日下午9点39分04秒org.jnativehook.GlobalScreen $ NativeHookThread使

鼠标单击:2

INFO:process_button_released [361]:按键1 2释放时间(s)。 (293,661)

回答

3

如果你想从JNativeHook删除日志垃圾邮件:

// Clear previous logging configurations. 
LogManager.getLogManager().reset(); 

// Get the logger for "org.jnativehook" and set the level to off. 
Logger logger = Logger.getLogger(GlobalScreen.class.getPackage().getName()); 
logger.setLevel(Level.OFF); 

添加这,例如。您的主要类构建与删除(几乎)所有日志记录。 现在让我们检测自己的事件并打印一些基本信息。

首先,你必须注册NativeHook:

GlobalScreen.registerNativeHook(); 

然后一些监听绑定到它,例如:

GlobalScreen.getInstance().addNativeKeyListener(new YourMainClass()); 

然后重写JNativeHook事件方法是这样的:

@Override 
    public void nativeKeyPressed(NativeKeyEvent e) { 
System.out.Println(((char) e.getKeyCode()) + " was pressed.") 
} 

结账:JNativeHook GitHub,你会发现一些示例代码(fo例如 Global Mouse Listener以及关于它的事件的文档。