Tastaturereignisse
-
Hallo,
ich habe ein Form erstellt, da sind 8 Buttons drauf und 8 PictureBox ...
so ich will nun die Position von eines der PictureBox mit Hilfe der Tastatur (Pfeiltasten{rechts, links, oben und unten}) ändern.
Wie geht das?
Wie kann ich einen Fensterweiten Tastatur Hook schreiben, soll aber nur in dem Form gehen mehr nicht, nicht außerhalb von dem Form/Fenster.
Ich benutze Visual c++ Express, ist ja .NET basiert ...
MfG
-
Schau DIr mal KeyPreview der Form an
-
Hallo,
irrgend wie geht das nicht.
Wird einfach kein Event ausgelöst:private: System::Void Form1_PreviewKeyDown(System::Object^ sender, System::Windows::Forms::PreviewKeyDownEventArgs^ e) { System::String ^ myCode; if(e->KeyCode == Keys::Down) myCode = "Down"; else if (e->KeyCode == Keys::Up) myCode = "Up"; else if (e->KeyCode == Keys::Left) myCode = "Left"; else if (e->KeyCode == Keys::Right) myCode = "Right"; else myCode = "XYZ"; MessageBox::Show("Key: " + myCode); }
Natürlich habe ich die Methode in der Event liste:
this->PreviewKeyDown += gcnew System::Windows::Forms::PreviewKeyDownEventHandler(this, &Form1::Form1_PreviewKeyDown);
Was läuft da schief?
MfG
-
PS:
Der wächselt nur den Focus von den Buttons
MfG
-