Windows10 Home / JDK1.8
<dependency>
<groupId>com.1stleg</groupId>
<artifactId>jnativehook</artifactId>
<version>2.1.0</version>
</dependency>
import org.jnativehook.GlobalScreen;
import org.jnativehook.NativeHookException;
import org.jnativehook.keyboard.NativeKeyEvent;
import org.jnativehook.keyboard.NativeKeyListener;
public class Example implements NativeKeyListener {
public static void main(String[] args) {
//Wenn nicht eingehakt
if (!GlobalScreen.isNativeHookRegistered()) {
try {
//Haken registrieren
GlobalScreen.registerNativeHook();
} catch (NativeHookException e) {
e.printStackTrace();
System.exit(-1);
}
}
//Registrieren Sie den Key Listener
GlobalScreen.addNativeKeyListener(new Example());
}
//Wenn Sie eine Taste drücken
@Override
public void nativeKeyPressed(NativeKeyEvent e) {
System.out.println(e.paramString());
}
//Wenn Sie den Schlüssel loslassen
@Override
public void nativeKeyReleased(NativeKeyEvent e) {
System.out.println(e.paramString());
}
//Wenn Sie den Schlüssel eingeben
@Override
public void nativeKeyTyped(NativeKeyEvent e) {
System.out.println(e.paramString());
}
}
Mit diesem Code können Sie einen Schlüssel-Listener für alle laufenden Threads einrichten, nicht nur für den Thread, in dem dieser Code ausgeführt wird.
Das Ereignis tritt auf, wenn Sie eine Taste in einer Software wie Chrome oder Minecraft drücken.
Außerdem ist jede Schlüsselereigniskonstante mit jeder java.awt.event.KeyListener-Konstante identisch.
//Maushörer
GlobalScreen.addNativeMouseListener(NativeMouseListener);
//Mausbewegungshörer
GlobalScreen.addNativeMouseMotionListener(NativeMouseMotionListener);
//Mausrad Listener
GlobalScreen.addNativeMouseWheelListener(NativeMouseWheelListener);
Und mausbezogene Listener sind verfügbar.
Wenn Sie es nicht benötigen, wird standardmäßig eine beträchtliche Anzahl von Protokollen ausgegeben. LogManager.getLogManager().reset(); Fügen wir noch etwas zur Hauptmethode hinzu.
Es gibt eine paramString () -Methode, also verwenden wir sie.
Recommended Posts