2015-05-31 2 views
2

Я пытаюсь использовать библиотеку jnativehook в своем проекте. Я хочу получить простые данные (например, мышь нажата: 2) вместо длинных данных регистрации, которые jnativehook производятся как:Как удалить данные регистрации из библиотеки JNativeHook

31 мая 2015 г. 21:39:04 org.jnativehook.GlobalScreen $ NativeHookThread enable INFO: process_button_pressed [339]: кнопка 1 нажата 2 раза. (293, 661)

31 мая 2015 9:39:04 PM org.jnativehook.GlobalScreen $ NativeHookThread включить

указателя мыши: 2

INFO: process_button_released [361]: Кнопка 1 выпустил 2 время (ы). (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 r пример Global Mouse Listener и документация о его событиях.

Смежные вопросы