Wie mittels GetAsyncKeyState überprüfen ob Shift aktiv?
-
Hallo,
wie kann ich mittels GetAsyncKeyState überprüfen ob Shift/Großschreib Taste aktiviert/gedrückt ist?
-
msdn sagt dazu:
You can use the virtual-key code constants VK_SHIFT, VK_CONTROL, and VK_MENU as values for the vKey parameter. This gives the state of the SHIFT, CTRL, or ALT keys without distinguishing between left and right.
http://msdn.microsoft.com/en-us/library/ms646293(VS.85).aspx
-
probiers mal so:
for(;;) { if(GetAsyncKeyState(VK_SHIFT)) { tu_was(); } }
die virtual-key-codes gibts übrigens auch hier(alle): http://msdn.microsoft.com/en-us/library/ms645540(VS.85).aspx
-
GetAsyncKeyState(...) & 0x8000
bitte
-
peterchen schrieb:
GetAsyncKeyState(...) & 0x8000
bitte
Ich nehme immer:
GetAsyncKeyState(...)<0
-
Generell besser GetKeyState verwenden: http://blog.m-ri.de/index.php/2008/06/11/die-unsitte-getasynchkeystate-statt-geykeystate-zu-verwenden/
-
<0 ist auch schön
GetAsyncKeyState vs. GetKeyState:
Kommt halt drauf an, ob man den Status zum Zeitpunkt der Erzeugung oder der Bearbeitung des Events haben will. Richtig ist, das in den meisten Fällen besser den Erzeugungszeitpunkt nimmt.