Freigeben über


KeyPress-Ereignis

Tritt auf, wenn der Benutzer eine ANSI-TASTE drückt.

Syntax

PrivateSub-Objekt _KeyPress( ByValKeyANSIAs MSForms.ReturnInteger)

Die Syntax des KeyPress-Ereignisses umfasst die folgenden Teile:

Bestandteil Beschreibung
Objekt Erforderlich. Ein gültiges Objekt.
KeyANSI Erforderlich. Ein Ganzzahlenwert, der einen numerischen Standardcode für die ANSI-TASTE darstellt.

Hinweise

Das KeyPress-Ereignis tritt ein, wenn der Benutzer eine Taste drückt, die ein darstellbares Zeichen (eine ANSI-TASTE) auf einem ausgeführten Formular generiert, während das Formular oder ein Steuerelement auf dem Formular den Fokus hat. Das Ereignis kann entweder vor oder nach dem Loslassen der Taste eintreten. Dieses Ereignis tritt auch auf, wenn Sie einen ANSI-Tastenanschlag an ein Formular oder Steuerelement senden, indem Sie entweder die SendKeys-Aktion in einem Makro oder die SendKeys-Anweisung in Visual Basic verwenden.

Ein KeyPress-Ereignis kann eintreten, wenn eine der folgenden Tasten gedrückt wird:

  • Beliebiges druckbares Tastaturzeichen
  • STRG kombiniert mit einem Zeichen aus dem Standardalphabet
  • STRG kombiniert mit einem beliebigen Sonderzeichen
  • RÜCKTASTE
  • ESC

Unter den folgenden Umständen tritt kein KeyPress-Ereignis ein:

  • Drücken der TAB-TASTE.
  • Drücken der EINGABETASTE.
  • Drücken einer PFEILTASTE.
  • Wenn eine Tastatureingabe die Verschiebung des Fokus von einem Steuerelement zu einem anderen verursacht.

Hinweis

[!HINWEIS] Die RÜCKTASTE gehört zum ANSI-Zeichensatz, ENTF jedoch nicht. Das Löschen eines Zeichens in einem Steuerelement mithilfe von BACKSPACE verursacht ein KeyPress-Ereignis. Das Löschen eines Zeichens mithilfe von DELETE ist nicht der Fall.

Wenn ein Benutzer eine Taste gedrückt hält, die einen ANSI-Tastencode generiert, treten die KeyDown- und KeyPress-Ereignisse abwechselnd und wiederholt ein. Wenn der Benutzer die Taste loslässt, tritt das KeyUp-Ereignis ein. Das Formular oder Steuerelement, das den Fokus hat, empfängt alle Tastatureingaben. Ein Formular kann nur dann den Fokus haben, wenn es keine Steuerelemente enthält oder wenn alle sichtbaren Steuerelemente deaktiviert sind.

Die Standardaktion für das KeyPress-Ereignis umfasst die Verarbeitung des Ereigniscodes, der der gedrückten Taste entspricht. KeyANSI gibt das ANSI-Zeichen an, das der gedrückten Taste oder der Tastenkombination entspricht. Das KeyPress-Ereignis interpretiert den Groß- und Kleinbuchstaben jedes Zeichens als separate Schlüsselcodes und daher als zwei separate Zeichen.

Wenn Sie auf den physikalischen Zustand der Tastatur reagieren oder vom KeyPress-Ereignis nicht erkannte Tastatureingaben – beispielsweise Funktionstasten, Navigationstasten und jegliche Kombinationen dieser Tasten mit Zusatztasten (ALT, UMSCHALTTASTE oder STRG) – nicht behandeln möchten, verwenden Sie die KeyDown- und KeyUp-Ereignisprozeduren.

Die Reihenfolge der tastaturbezogenen Ereignisse lautet wie folgt:

  1. KeyDown
  2. KeyPress
  3. KeyUp

Siehe auch

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.