Delen via


Toetsenbordevenementen gebruiken

De meeste Windows Forms-programma's verwerken toetsenbordinvoer door de toetsenbord gebeurtenissen te verwerken. Dit artikel biedt een overzicht van de toetsenbordgebeurtenissen, inclusief details over wanneer elke gebeurtenis gebruikt moet worden en de gegevens die voor elke gebeurtenis worden verstrekt. Zie Het overzicht van gebeurtenissen voor meer informatie over gebeurtenissen in het algemeen.

Toetsenbordevenementen

Windows Forms biedt twee gebeurtenissen die optreden wanneer een gebruiker op een toetsenbordtoets drukt en één gebeurtenis wanneer een gebruiker een toetsenbordtoets vrijgeeft:

  • De KeyDown gebeurtenis vindt eenmaal plaats.
  • De KeyPress gebeurtenis, die meerdere keren kan optreden wanneer een gebruiker dezelfde sleutel vasthoudt.
  • De KeyUp gebeurtenis vindt eenmaal plaats wanneer een gebruiker een sleutel vrijgeeft.

Wanneer een gebruiker op een toets drukt, bepaalt Windows Forms welke gebeurtenis moet worden gegenereerd op basis van of het toetsenbordbericht een tekentoets of een fysieke toets opgeeft. Zie Toetsenbordoverzicht, toetsenbord gebeurtenissenvoor meer informatie over tekens en fysieke toetsen.

In de volgende tabel worden de drie toetsenbordevenementen beschreven.

Toetsenbord gebeurtenis Beschrijving Resultaten
KeyDown Deze gebeurtenis wordt gegenereerd wanneer een gebruiker op een fysieke sleutel drukt. De handler voor KeyDown ontvangt:

  • Een KeyEventArgs-parameter die de eigenschap KeyCode biedt (die een fysieke toetsenbordknop specificeert).
  • De eigenschap Modifiers (Shift, Ctrl of Alt).
  • De eigenschap KeyData (die de sleutelcode en modifier combineert). De parameter KeyEventArgs biedt ook:

    • De eigenschap Handled, die kan worden ingesteld om te voorkomen dat het onderliggende besturingselement de sleutel ontvangt.
    • De SuppressKeyPress eigenschap kan worden gebruikt om de KeyPress en KeyUp gebeurtenissen voor die toetsaanslag te onderdrukken.
KeyPress Deze gebeurtenis wordt gegenereerd wanneer de toets of toetsen die zijn ingedrukt, resulteren in een teken. Een gebruiker drukt bijvoorbeeld op Shift en de kleine letter 'a' toets, wat resulteert in een hoofdletter 'A'. KeyPress wordt verhoogd na KeyDown.

  • De handler voor KeyPress ontvangt:
  • Een KeyPressEventArgs parameter, die de tekencode bevat van de sleutel die is ingedrukt. Deze tekencode is uniek voor elke combinatie van een toets en een modifier-toets.

    Met de sleutel A wordt bijvoorbeeld het volgende gegenereerd:

    • De tekencode 65, als deze wordt ingedrukt met de Shift-toets
    • Of Caps Lock is ingeschakeld, 97 als het door zichzelf wordt ingedrukt,
    • En 1, als deze met de Ctrl-toets wordt ingedrukt.
KeyUp Deze gebeurtenis wordt gegenereerd wanneer een gebruiker een fysieke sleutel vrijgeeft. De handler voor KeyUp ontvangt:

  • Een KeyEventArgs parameter:

    • Dit biedt de eigenschap KeyCode (waarmee een fysieke toetsenbordknop wordt opgegeven).
    • De eigenschap Modifiers (Shift, Ctrl of Alt).
    • De eigenschap KeyData (die de sleutelcode en modifier combineert).

Zie ook