Eingaben global abfangen
-
Hi!
Gibt es eine Möglichkeit Eingaben (Tastatur, Maus) global zu abzufangen?
Ich möchte eine Präsentationssoftware schreiben, bei der man das Programm nur nach Passwort-Eingabe schließen kann bzw. Einstellungen ändern kann. Es müsste alle Eingaben abfangen um das dieser Mechanismus nicht umgangen werden kann. Das ist sicher nur plattformspezifisch möglich, richtig?
MfG
WilMen
-
WilMen schrieb:
Ich möchte eine Präsentationssoftware schreiben, bei der man das Programm nur nach Passwort-Eingabe schließen kann bzw. Einstellungen ändern kann. Es müsste alle Eingaben abfangen um das dieser Mechanismus nicht umgangen werden kann. Das ist sicher nur plattformspezifisch möglich, richtig?
Ja (soweit ich weiß)
-
http://java.sun.com/docs/books/tutorial/uiswing/components/rootpane.html
Schon Platformunabhängig
Nur Applikationsweit (i.e. Taskmanager - App schliessen so nicht abfangbar)
-
Eventuell hilft KeyEventDispatcher
mfg
xorm
-
Schau mal auf http://www.swtui.cn/
Die Hooks werden für dich interessant sein. Auch wenn du kein SWT einsetzt kannst du das nutzen.Hook.KEYBOARD.addListener(new HookEventListener() { public void acceptHookData( HookData hookData ) { if ( ((KeyboardHookData) hookData).getVirtualKeyCode() == KeyEvent.VK_PAUSE && ! ((KeyboardHookData) hookData).getTransitionState() ) { // mach irgendwas } } } ); Hook.KEYBOARD.install();
Neben Hook.KEYBOARD gibt es auch Hook.MOUSE.