Partager via


Utilisation des événements du clavier

La plupart des programmes Windows Forms traitent l’entrée du clavier en gérant les événements de clavier. Cet article fournit une vue d’ensemble des événements clavier, y compris des détails sur le moment où utiliser chaque événement et les données fournies pour chaque événement. Pour plus d’informations sur les événements en général, consultez Vue d’ensemble des événements.

Événements de clavier

Windows Forms fournit deux événements qui se produisent lorsqu’un utilisateur appuie sur une touche clavier et un événement lorsqu’un utilisateur libère une touche de clavier :

  • L’événement KeyDown se produit une seule fois.
  • Événement KeyPress, qui peut se produire plusieurs fois lorsqu’un utilisateur conserve la même clé.
  • L’événement KeyUp se produit une fois lorsqu’un utilisateur libère une clé.

Lorsqu’un utilisateur appuie sur une touche, Windows Forms détermine l’événement à déclencher selon que le message clavier spécifie une touche de caractère ou une touche physique. Pour plus d’informations sur les touches physiques et les caractères, consultez Vue d’ensemble du clavier, événements de clavier.

Le tableau suivant décrit les trois événements de clavier.

Événements de clavier Descriptif Résultats
KeyDown Cet événement est déclenché lorsqu’un utilisateur appuie sur une touche physique. Le gestionnaire de KeyDown reçoit :

  • Paramètre KeyEventArgs, qui fournit la propriété KeyCode (qui spécifie un bouton de clavier physique).
  • La propriété Modifiers (Maj, Ctrl ou Alt).
  • Propriété KeyData (qui combine le code de clé et le modificateur). Le paramètre KeyEventArgs fournit également les éléments suivants :

    • Propriété Handled, qui peut être définie pour empêcher le contrôle sous-jacent de recevoir la clé.
    • Propriété SuppressKeyPress, qui peut être utilisée pour supprimer les événements KeyPress et KeyUp pour cette séquence de touches.
KeyPress Cet événement est déclenché quand la ou les touches enfoncées génèrent un caractère. Par exemple, l'utilisateur appuie sur les touches Maj et « a », ce qui produit un caractère « A » majuscule. KeyPress est déclenché après KeyDown.

  • Le gestionnaire de KeyPress reçoit :
  • Paramètre KeyPressEventArgs, qui contient le code de caractère de la touche qui a été enfoncée. Ce code de caractère est unique pour chaque combinaison d’une touche de caractère et d’une touche de modificateur.

    Par exemple, la clé « A » génère :

    • Le code de caractère 65, lorsqu'on appuie sur la touche Maj
    • Ou le verrou caps est activé, 97 s’il est enfoncé par lui-même,
    • Et 1, si elle est enfoncée avec la touche Ctrl .
KeyUp Cet événement est déclenché lorsqu’un utilisateur libère une clé physique. Le gestionnaire de KeyUp reçoit :

  • Un paramètre KeyEventArgs :

    • Qui fournit la propriété KeyCode (qui spécifie un bouton de clavier physique).
    • La propriété Modifiers (Maj, Ctrl ou Alt).
    • Propriété KeyData (qui combine le code de clé et le modificateur).

Voir aussi