Tastenanschlag-Nachrichtenverarbeitung

Die Fensterprozedur des Fensters, das den Tastaturfokus besitzt empfängt Tastenanschlag Nachrichten, wenn der Benutzer über die Tastatur eingibt. Die Tastenanschlag Nachrichten sind WM_KEYDOWN, WM_SYSKEYDOWN, WM_KEYUPund WM_SYSKEYUP. Eine typische Windows-Prozedur ignoriert alle Tastenanschlag Nachrichten außer WM_KEYDOWN. Das System Bucht die WM_KEYDOWN Nachricht, wenn der Benutzer eine Taste drückt.

Wenn die Fensterprozedur die WM_KEYDOWN Nachricht empfängt, sollte sie den virtuelle Tastencode prüfen, der die Nachricht um zu bestimmen, wie den Tastenanschlag verarbeitet begleitet. Der virtuelle Tastencode ist die Nachricht wParam -Parameter. In der Regel verarbeitet eine Anwendung nur Tastenanschläge, die durch nicht-Zeichen-Schlüssel, einschließlich der Funktionstasten, die Cursor-Tasten, Bewegung und die spezielle Tasten wie ins, del, home und End generiert.

Das folgende Beispiel zeigt dem Fenster Verfahren Framework, dass eine typische Anwendung wird verwendet, um den Tastenanschlag Meldungen empfangen und verarbeiten.

fall WM_KEYDOWN: Switch (wParam) {case VK_LEFT: / / Process die Links-Taste. 
                     
                    brechen; 
 
                Fall VK_RIGHT: / / Prozess-rechts-Taste. 
                     
                    brechen; 
 
                VK_UP Fall: / / Prozess-oben-Taste. 
                     
                    brechen; 
 
                Fall VK_DOWN: / / verarbeitet die nach-unten-Taste. 
                     
                    brechen; 
 
                Case VK_HOME: / / verarbeitet die POS1-Taste. 
                     
                    brechen; 
 
                Case VK_END: / / verarbeitet die Ende-Taste. 
                     
                    brechen; 
 
                Case VK_INSERT: / / verarbeitet die EINFG-Taste. 
                     
                    brechen; 
 
                Fall VK_DELETE: / / verarbeitet die ENTF-Taste. 
                     
                    brechen; 
 
                Fall VK_F2: / / verarbeitet die F2-Taste. 
                    
                    brechen; 
 
                
                / / Andere nicht zeichenbasierte Tastatureingaben verarbeiten. 
                 
                Standard: brechen; 
            } 

 

Index