Frage

Ich versuche, Kniekappen Sperre ein / aus, wenn die beiden Shift-Tasten sind für eine Sekunde gedrückt. Ich habe versucht, das virtkey Modul verwenden, aber es funktioniert nicht. Das Modul funktioniert für andere Schlüssel aber, so glaube ich nicht, dass ich das Modul falsch bin mit.

hat jemand einen Weg, dies zu tun?

Just klar sein, ich will eigentlich Toggle Caps Lock on / off und nicht nur die LED.

Danke!

War es hilfreich?

Lösung

Das funktioniert für mich (leuchtet die LED ein- und ausgeschaltet sowie enable / disable-Caps)

import virtkey

v = virtkey.virtkey()
v.press_keycode(66)
v.release_keycode(66)  # first release doesn't release it
v.release_keycode(66)

Hier sind einige weitere Beispiele

v.press_keycode(66)    # turns capslock on
v.release_keycode(66)
v.press_keycode(66)    # turns capslock off
v.release_keycode(66)

Sie können auch ein Toggle-Verhalten bekommen nur release_keycode mit

v.release_keycode(66)  # toggles capslock
v.release_keycode(66)  # toggles back again capslock

Andere Tipps

Sache Lustig. Ich gab einen Versuch im Interpreter virtkey, und es schien, wie es funktioniert. Nach dem Aufruf von press_keycode(50) wirkt meine Maschine wie Kappen Sperre (Ubuntu 9.10, Python-virtkey .50ubuntu2) gedrückt. Wenn ich kurz die Tasten release_keycode(50)- es wirkt wie nichts passiert ist.

import virtkey

v = virtkey.virtkey()
v.press_keycode(50)

Wenn Lauf als Skript, Blätter die Caps-Taste für eine virtuelle Endanschlussstreifen gedrückt. Sehr ärgerlich.

Haben Sie sich in den xvkbd Befehl? Es ist eine X virtuelle Tastatur mit Kommandozeilenoptionen und schlimmster Fall, dass Sie es aus Python nennen könnten. Eine weitere Idee zu schauen ist xmodmap, die Sie re-Karte Schlüssel in X. Siehe dieser Beitrag auf SU für ein Beispiel.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top