Die Erkennung von Tastatureingaben mittels win32api in Python
Ich bin versucht zu brechen, eine Schleife in Python mit einem speziellen Schlüssel, drücken Sie mit win32api. Wie würde man das angehen?
Was ist die aktuelle version von win32api.KeyPress('H'), in der folgende code?
Überarbeitet:
import win32api
while True :
cp = win32api.GetCursorPos()
print cp
if win32api.KeyPress('H') == True :
break
Ich möchte in der Lage zu brechen eine Schleife durch drücken der h - Taste.
Edit:
Ich bin versucht, um ein Programm, dass immer wieder Berichte, die Maus-Positionen, und ich brauche einen Mechanismus, um zu beenden, sagte das Programm.
Sehen überarbeitete code.
InformationsquelleAutor rectangletangle | 2011-04-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
win32api
ist nur eine Schnittstelle zu dem zugrunde liegenden windows low-level-Bibliothek.Finden Sie die
GetAsyncKeyState
- Funktion:Beachten Sie, dass der return-Wert ist bit-codiert (nicht
boolean
).Zu bekommen bei
vKey
Werte, eine Anwendung kann die virtual-key code-Konstanten in derwin32con
Modul.Beispielsweise die Prüfung der "CAPS LOCK" - Taste:
Den virtual-key-Konstante für einfache Briefe sind ASCII-codes,
also, testen Sie den Zustand des "H" - Taste (Taste wurde gedrückt), wird wie folgt Aussehen:
InformationsquelleAutor gimel
Dies ist nicht wie es funktioniert in der GUI-Programmierung. Sie don ' T nennen Sie eine Methode zu prüfen, eine Taste zu drücken. Stattdessen erhalten Sie gesendete Nachrichten, wenn Tasten gedrückt werden. Angenommen, Sie haben ein Fenster, auf dem Eingang, dann müssen Sie reagieren, um die
WM_KEYDOWN
Nachricht, Ankunft in Ihrem Fenster-Prozedur, oder eine Nachricht anzeigen, die in Python win32api-Bedingungen.Deine Bearbeitung zeigt, dass du nicht mit Hilfe der message-queue, die ist eher ungewöhnlich. Sie können in der Lage sein zu erreichen, was Sie wollen, durch aufrufen
GetAsyncKeyState()
.InformationsquelleAutor David Heffernan
Überprüfen Sie die python Fliesenleger auf github, sehr sinnvoll, auch wenn Sie versuchen zu finden Sie einfach die Tasten-codes zu senden. Auch dies wird nützlich sein, wenn Sie Ihren code ausführen im hintergrund und brechen wollen, dass die Schleife vor dem Fenster.
git-Projekt:
https://github.com/Tzbob/python-windows-tiler
code mit windows-Tasten:
https://code.google.com/p/python-windows-tiler/source/browse/pwt/hotkey.py?r=df41af2a42b6304047a5f6f1f2903b601b22eb39
InformationsquelleAutor jkdba