Définition du type de gestionnaire
Remonter à Définition de vos propres événements
Après avoir détecté que l'un de vos événements s'est produit, vous devez définir la façon de le gérer. Cela implique que vous devez déterminer le type du gestionnaire d'événement. Dans la plupart des cas, les gestionnaires d'événements que vous définissez vous-même seront des notifications simples ou spécifiques à des événements particuliers. Il est également possible de récupérer de l'information en provenance du gestionnaire.
Sommaire
Notifications simples
Un événement de type notification ne fait qu'indiquer qu'un événement particulier s'est produit sans fournir aucune information sur le moment et l'endroit où il s'est produit. Les notifications utilisent le type TNotifyEvent, qui véhiculent un paramètre unique correspondant à l'émetteur de l'événement. Les seuls éléments "connus" du gestionnaire associé à une notification sont donc le type d'événement et le composant impliqué. Par exemple, les événements clic de souris sont des notifications. Lorsque vous écrivez un gestionnaire pour un événement de ce type, vous ne récupérez que deux informations : le fait qu'un clic s'est produit et le composant impliqué.
Une notification est un processus à sens unique. Il n'existe aucun mécanisme pour renvoyer une information en retour ou pour inhiber la gestion d'une notification.
Gestionnaires d'événements spécifiques
Dans certains cas, savoir qu'un événement s'est produit et connaître le composant impliqué n'est pas suffisant. Par exemple, si l'événement correspond à l'enfoncement d'une touche, le gestionnaire voudra savoir quelle est cette touche. Dans un cas comme celui-là, vous devez disposer d'un gestionnaire qui accepte des paramètres pour ces informations supplémentaires.
Si votre événement a été généré en réponse à un message, les paramètres transmis au gestionnaire d'événement seront vraisemblablement issus des paramètres du message.
Renvoi d'informations à partir du gestionnaire
Comme tous les gestionnaires d'événements sont des procédures, la seule façon de renvoyer des informations à partir d'un gestionnaire consiste à faire appel à un paramètre var. Vos composants peuvent utiliser les informations ainsi récupérées pour déterminer le traitement éventuel d'un événement après l'exécution du gestionnaire de l'utilisateur.
Par exemple, tous les événements liés aux touches (OnKeyDown, OnKeyUp et OnKeyPress) transmettent par référence la valeur de la touche enfoncée dans un paramètre intitulé Key. Le gestionnaire d'événement peut changer Key de façon à donner l'impression à l'application qu'une touche différente est impliquée dans l'événement. Cela permet par exemple de forcer en majuscules les caractères tapés.
Rubriques
- Le type de renvoi des gestionnaires d'événement est void (C++)
- Les gestionnaires vides doivent être valides
- Les utilisateurs peuvent redéfinir la gestion par défaut
- Appel du gestionnaire d'événement de clic