Tables d'événements
Lorsqu'un contrôle souhaite signaler son conteneur qu'une action (déterminée par le développeur de contrôle) s'est produite (comme une séquence de touches, le clic de souris, ou une modification à l'état de contrôle) elle appelle une fonction de le déclenchement d'événements.Cette fonction informe le conteneur de contrôle qu'une action d'important s'est produit en déclenchant l'événement associé.
La bibliothèque MFC offre un modèle de programmation optimisé pour déclencher des événements.Dans ce modèle, les « tables d'événements » sont utilisées pour indiquer qui fonctionne le déclencher les événements pour un contrôle particulier.Les tables d'événement contiennent un pour chaque événement.Par exemple, une table d'événement qui déclenche un événement clic boursières peut se présenter comme suit :
BEGIN_EVENT_MAP(CMyAxCtrl, COleControl)
EVENT_STOCK_CLICK()
END_EVENT_MAP()
La macro d' EVENT_STOCK_CLICK indique que le contrôle déclenche un événement clic stock chaque fois qu'il détecte un clic de souris.Pour une liste plus détaillé d'autres événements stock, consultez l'article Contrôles ActiveX : événements.Les macros sont également disponibles pour indiquer des événements personnalisés.
Bien que les macros de table d'événement sont importantes, vous ne les insérez pas directement.C'est parce que la fenêtre Propriétés crée automatiquement des entrées de mappage d'événements dans vos fichiers sources lorsque vous l'utilisez pour associer des fonctions de déclenchement d'événements aux événements.Lorsque vous souhaitez modifier ou ajouter une entrée de table d'événements, vous pouvez utiliser la fenêtre Propriétés.
Pour prendre en charge des tables d'événements, MFC fournit les macros suivantes :
Déclaration et séparation de la table d'événements
Déclare qu'une table d'événements sera utilisée dans une classe pour mapper des événements aux fonctions de déclenchement d'événements (doit être utilisé dans la déclaration de classe). |
|
Commence la définition d'une table d'événements (doit être utilisé dans l'implémentation de classe). |
|
Termine la définition d'une table d'événements (doit être utilisé dans l'implémentation de classe). |
Macros de mappage d'événement
Indique que la fonction de le déclenchement d'événements déclenchera l'événement spécifié. |
|
Indique que la fonction de le déclenchement d'événements déclenchera l'événement spécifié, avec un ID indiquée d'expédition |
Macros de mappage de message
Indique un verbe personnalisé géré par le contrôle OLE. |
|
Substitue un mappage standard de verbe du contrôle OLE. |