Wenn dies Ihr erster Besuch hier ist,
lesen Sie bitte zuerst die Hilfe - Häufig gestellte Fragen
durch. Sie müssen sich vermutlich registrieren,
bevor Sie Beiträge verfassen können. Klicken Sie oben auf 'Registrieren', um den Registrierungsprozess zu
starten. Sie können auch jetzt schon Beiträge lesen. Suchen Sie sich einfach das Forum aus, das Sie am meisten
interessiert.
Ich habe da noch eine andere function, die eigendlich dafuer besser waere, habe sie aber noch nicht getestet: <br>
Get(Async)KeyState <br>
(warum das ganze keyboard abfragen, wenn eine Taste reicht
Nein, da GetKeyboardState() nur den virtuallen Tastenstatus des aktuellen Threads abfragt, zudem muss dieser Thread einen Messagequeue besitzen sonst machts keinen Sinn.
Die Idee mit getAsyncKeyState() scheint im ersten Moment die beste zu sein, hat aber einen Hacken. Nutzt z.B. ein Windows Control diese Funktion um z.B. F10 abzufragen und Du hast vorher die gleiche taste abgefragt dann ist für dieses Control F10 nicht gedrückt. Meint: GetAsynKeyState() fragt ab ob eine Taste gedrückt ist und löscht intern dieses Flag. Ein erneuter Aufruf würde also zurückgeben das F10 gedrückt war und nicht ist.
Der richtigste Weg <b>systemweit den Tastenstatus abzufragen</b> besteht darin einen Virtuellen Gerätetreiber, kurz VXD für Windows 95,98 und ME oder einen System Gerätetreiber, kurz SYS für Windows NT oder 2000, zu programmmieren.
Comment