所以我目前正在編寫一個程序來計算我正在按的特定鍵。計數工作正常,但我希望程序完全在後臺運行(沒有打開的窗口或任務欄中的標誌)。Java:如何在後臺記錄擊鍵?
那麼Java中有沒有辦法在後臺完全運行進程?我目前正在使用JFrame
進行計數。
所以我目前正在編寫一個程序來計算我正在按的特定鍵。計數工作正常,但我希望程序完全在後臺運行(沒有打開的窗口或任務欄中的標誌)。Java:如何在後臺記錄擊鍵?
那麼Java中有沒有辦法在後臺完全運行進程?我目前正在使用JFrame
進行計數。
你可以使用JNativeHook這裏是打印每一個鍵,按下時,你可以修改這個您的需要按鍵的數量爲例: -
import org.jnativehook.GlobalScreen;
import org.jnativehook.keyboard.NativeKeyEvent;
import org.jnativehook.keyboard.NativeKeyListener;
public class Main implements NativeKeyListener
{
public static void main(String[] args)
{
try
{
GlobalScreen.registerNativeHook();
}
catch(Exception e)
{
e.printStackTrace();
}
GlobalScreen.getInstance().addNativeKeyListener(new Main());
}
private int count;
@Override
public void nativeKeyPressed(NativeKeyEvent e)
{
System.out.println("Pressed " + NativeKeyEvent.getKeyText(e.getKeyCode()));
count++;
System.out.println(count);
}
@Override
public void nativeKeyReleased(NativeKeyEvent e)
{
}
@Override
public void nativeKeyTyped(NativeKeyEvent e)
{
}
}
如果你不知道如何導入JNativeHook庫然後How to install JNativeHook Library?
非常感謝! :) – Tastro
沒有probs @ user2897579 –
基本上,你想要一個鍵盤記錄器..對嗎? –
是的,但計數:))...就像我按標籤或按Ctrl鍵的次數 – Tastro