Wie greif ich auf die Pfeiltasten zu?
-
Ich habe ein kleines Progrämmchen namens Snake geschrieben. Ist voll innovativ und neu. Wird bestimmt mal voll der Hammer! *g*
Spass beiseite:
Ich weiss nicht wie ich auf die Pfeiltasten (links vom Num-Block) zugreifen kann. Es scheint mir als waeren die Pfeiltasten abgeschaltet weil ich von denen kein Feedback mittels eines virtuellen Key-Code bekomme, aber sonst von fast allen restlichen Tasten. Liegt das vielleicht an der Methode OnKeyDown selbst oder gibt es eine Funktion mittels der ich in der OnKeyDown Methode auf die Pfeiltasten zugreifen kann?Mr.Perfect
-
Hi Mr.Perfect,
steht bei den Virtual Keys in der MSDN:VK_UP
VK_DOWN
VK_LEFT
VK_RIGHTWer hätte das gedacht ?
mfg, takeiteasy
-
Hab ich auch schon mit GetkeyState ausprobiert. Hab trotzdem keine Reaktion beim Drücken von den Pfeiltasten erhalten.
Dann hab ich es sogar so gemacht, dass ich eine MessageBox geöffnet habe sobald der Virtual Key-Code (Parameter nChar in der Methode OnKeyDown) grösser als 0 war, was bedeutet, dass bei jeder Taste die MessageBox geöffnet werden sollte. Jedoch passierte dass nicht bei den Pfeiltasten.Ich hab echt keine Ahnung mehr was ich machen soll.
BIIIIIIITTEEEEE helft mir.
-
Hallo,
hab das mal bei einer Dlg-Based App. ausprobiert und in OnKeyDown bekomme ich nur 'Up' und 'Left' - eigenartigNaja, egal, ich habs dann in der PreTranslateMessage ausprobiert und da funktionierts so:
if (pMsg->message == WM_KEYDOWN) { switch(pMsg->wParam) { case VK_UP : TRACE("-->Up\n"); break; case VK_DOWN : TRACE("-->Down\n"); break; case VK_LEFT : TRACE("-->Left\n"); break; case VK_RIGHT : TRACE("-->Right\n"); break; default : TRACE("-->'Ne andere Taste\n"); } }
Da gehen auch die Messages für die Controls durch, also am besten noch das Wnd-Handle abfragen.
Gruß mathi
[ Dieser Beitrag wurde am 08.12.2002 um 23:31 Uhr von mathi editiert. ]
-
Vielen Dank!
Jetzt kann ich endlich mein voll ausgereiftes und innovatives Spiel auf den Markz bringen.Ncoh eine kleine Frage:
Was ist TRACE? Also ich hab da in meinem Dialogfeld nix rausbekommen. Ist das sowas ähnliches wie printf()?Mr.Perfect