Verwenden von Tastaturereignissen

Die meisten Windows Forms-Programme verarbeiten Tastatureingaben, indem sie Tastaturereignisse behandeln. Dieses Thema enthält eine Übersicht über die Tastaturereignisse, einschließlich Details dazu, wann jedes Ereignis verwendet wird sowie zu den Daten, die für jedes Ereignis übergeben werden. Siehe auch Übersicht über Ereignishandler (Windows Forms) und Ereignisse (Windows Forms).

Tastaturereignisse

Windows Forms stellen zwei Ereignisse bereit, die auftreten, wenn ein Benutzer eine Taste auf der Tastatur drückt, und ein Ereignis, wenn der Benutzer die Taste loslässt:

  • Das KeyDown-Ereignis tritt einmal auf.

  • Das KeyPress-Ereignis, das mehrfach auftreten kann, wenn der Benutzer die gleiche Taste gedrückt hält.

  • Das KeyUp-Ereignis tritt einmal auf, wenn der Benutzer eine Taste loslässt.

Wenn der Benutzer eine Taste drückt, ermittelt Windows Forms , welches Ereignis ausgelöst werden soll, und zwar basierend darauf, ob die Tastatureingabe eine Zeichentaste oder eine Steuer- bzw. Funktionstaste ist. Weitere Informationen zu Zeichentasten und Steuer- bzw. Funktionstasten finden Sie unter Funktionsweise von Tastatureingaben.

In der folgenden Tabelle werden diese drei Tastaturereignisse beschrieben.

Tastaturereignis BESCHREIBUNG Ergebnisse
KeyDown Dieses Ereignis wird ausgelöst, wenn der Benutzer eine Steuer- bzw. Funktionstaste drückt. Der Handler für KeyDown erhält Folgendes:

  • Einen KeyEventArgs-Parameter, der die KeyCode-Eigenschaft bereitstellt (womit eine Steuer- oder Funktionstaste angegeben wird).
  • Die Modifiers-Eigenschaft (UMSCHALT, STRG oder ALT).
  • Die KeyData-Eigenschaft (wodurch der Tastencode und der Modifizierer kombiniert werden). Der KeyEventArgs-Parameter stellt zudem Folgendes bereit:

    • Die Handled-Eigenschaft, die festgelegt werden kann, um zu verhindert, dass das zugrunde liegende Steuerelement auf den Tastendruck reagiert.
    • Die SuppressKeyPress-Eigenschaft, die verwendet werden kann, um KeyPress- und KeyUp-Eigenschaften für diesen Tastendruck zu unterdrücken.
KeyPress Dieses Ereignis wird ausgelöst, wenn der oder die Tastendrücke ein Zeichen bewirken. Wenn der Benutzer beispielsweise die Tasten UMSCHALT und kleines "a" drückt, wird das Zeichen "A" in Großbuchstaben angezeigt. KeyPress wird nach KeyDown ausgelöst.

  • Der Handler für KeyPress erhält Folgendes:
  • Einen KeyPressEventArgs-Parameter, der den Zeichencode der gedrückten Taste enthält. Dieser Zeichencode ist für jede Kombination aus Zeichentaste und Modifizierertaste eindeutig.

    So generiert die Taste "A" beispielsweise:

    • Den Zeichencode 65 in Verbindung mit der UMSCHALT-TASTE, oder
    • 97 in Verbindung mit der FESTSTELLTASTE, wenn diese allein gedrückt wird,
    • und 1, wenn sie zusammen mit der STRG-TASTE gedrückt wird.
KeyUp Dieses Ereignis wird ausgelöst, wenn der Benutzer eine Steuer- bzw. Funktionstaste loslässt. Der Handler für KeyUp erhält Folgendes:

  • Einen KeyEventArgs-Parameter.

    • Dieser stellt die KeyCode-Eigenschaft bereit (womit eine Steuer- oder Funktionstaste angegeben wird).
    • Die Modifiers-Eigenschaft (UMSCHALT, STRG oder ALT).
    • Die KeyData-Eigenschaft (wodurch der Tastencode und der Modifizierer kombiniert werden).

Siehe auch