Gestion des entrées utilisateur
Cette rubrique décrit les principaux événements de clavier et de souris fournis par System.Windows.Forms.Control. Lors de la gestion d'un événement, les auteurs de contrôles doivent substituer la méthode OnEventName protégée plutôt que d'attacher un délégué à l'événement. Pour obtenir une révision des événements, consultez Déclenchement d'événements à partir d'un composant.
Notes
S'il n'y a pas de données associées à un événement, une instance de la classe de base EventArgs est passée comme argument à la méthode OnEventName.
Événements de clavier
Les événements de clavier courants que votre contrôle peut gérer sont KeyDown, KeyPress et KeyUp.
Nom de l'événement | Méthode à substituer | Description de l'événement |
---|---|---|
KeyDown |
|
Déclenché uniquement lors du premier appui d'une touche. |
KeyPress |
|
Déclenché à chaque appui d'une touche. Si une touche est maintenue enfoncée, un événement KeyPress est déclenché selon le taux de répétition défini par le système d'exploitation. |
KeyUp |
|
Déclenché lorsqu'une touche est relâchée. |
Notes
La gestion des entrées au clavier est considérablement plus complexe que la substitution des événements du tableau précédent et n'est pas traitée dans cette rubrique. Pour plus d'informations, consultez Entrées d'utilisateur dans les Windows Forms.
Événements de souris
Les événements de souris que votre contrôle peut gérer sont MouseDown, MouseEnter, MouseHover, MouseLeave, MouseMove et MouseUp.
Nom de l'événement | Méthode à substituer | Description de l'événement |
---|---|---|
MouseDown |
|
Déclenché lorsque le bouton de la souris est enfoncé alors que le pointeur se trouve sur le contrôle. |
MouseEnter |
|
Déclenché lorsque le pointeur de la souris pénètre pour la première fois dans la région du contrôle. |
MouseHover |
|
Déclenché lorsque le pointeur de la souris passe sur le contrôle. |
MouseLeave |
|
Déclenché lorsque le pointeur de la souris quitte la région du contrôle. |
MouseMove |
|
Déclenché lorsque le pointeur de la souris se déplace dans la région du contrôle. |
MouseUp |
|
Déclenché lorsque le bouton de la souris est relâché alors que le pointeur se trouve sur le contrôle ou quitte la région du contrôle. |
Le fragment de code suivant montre un exemple de substitution de l'événement MouseDown.
Protected Overrides Sub OnMouseDown(ByVal e As MouseEventArgs)
MyBase.OnMouseDown(e)
If Not (myAllowUserEdit) Then
Return
End If
Capture = True
dragging = True
SetDragValue(New Point(e.X, e.Y))
End Sub
protected override void OnMouseDown(MouseEventArgs e) {
base.OnMouseDown(e);
if (!allowUserEdit) {
return;
}
Capture = true;
dragging = true;
SetDragValue(new Point(e.X, e.Y));
}
Le fragment de code suivant montre un exemple de substitution de l'événement MouseMove.
Protected Overrides Sub OnMouseMove(ByVal e As MouseEventArgs)
MyBase.OnMouseMove(e)
If (Not myAllowUserEdit Or Not dragging) Then
Return
End If
SetDragValue(New Point(e.X, e.Y))
End Sub
protected override void OnMouseMove(MouseEventArgs e) {
base.OnMouseMove(e);
if (!allowUserEdit || !dragging) {
return;
}
SetDragValue(new Point(e.X, e.Y));
}
Le fragment de code suivant montre un exemple de substitution de l'événement MouseUp.
Protected Overrides Sub OnMouseUp(ByVal e As MouseEventArgs)
MyBase.OnMouseUp(e)
If (Not myAllowUserEdit Or Not dragging) Then
Return
End If
Capture = False
dragging = False
Value = dragValue
OnValueChanged(EventArgs.Empty)
End Sub
protected override void OnMouseUp(MouseEventArgs e) {
base.OnMouseUp(e);
if (!allowUserEdit || !dragging) {
return;
}
Capture = false;
dragging = false;
value = dragValue;
OnValueChanged(EventArgs.Empty);
}
Pour obtenir le code source complet pour l'exemple FlashTrackBar
, consultez Comment : créer un contrôle Windows Forms qui affiche la progression.
Voir aussi
Concepts
Événements dans les contrôles Windows Forms
Définition d'un événement dans les contrôles Windows Forms
Autres ressources
Gestion et déclenchement d'événements
Entrées d'utilisateur dans les Windows Forms