CSplitButton::OnDropDown
Traite la notification d' BCN_DROPDOWN que le système envoie lorsqu'un utilisateur clique sur la flèche de déroulement du contrôle actuel de bouton partagé.
afx_msg void OnDropDown(
NMHDR* pNMHDR,
LRESULT* pResult
);
Paramètres
Paramètre |
Description |
---|---|
[in] pNMHDR |
Pointeur vers une structure de NMHDR qui contient des informations sur la notification de BCN_DROPDOWN . |
[out] pResult |
(Non utilisé ; aucune valeur n'est retournée.) Valeur de retour de la notification de BCN_DROPDOWN . |
Configuration requise
en-tête : afxcmn.h
Cette méthode est prise en Windows Vista et versions ultérieures.
Les spécifications supplémentaires pour cette méthode sont décrites dans Spécifications de génération des contrôles communs Windows Vista.
Notes
Lorsque l'utilisateur clique sur la flèche de déroulement sur un contrôle bouton partagé, le système envoie un message de notification d' BCN_DROPDOWN , que la méthode d' OnDropDown gère.Toutefois, l'objet d' CSplitButton n'est pas suivi pour la notification d' BCN_DROPDOWN le contrôle qui contient le contrôle bouton partagé.En conséquence, le contrôle conteneur ne peut pas prendre en charge une action personnalisée en réponse à une notification.
Pour implémenter une action personnalisée qui prend en charge contenants de contrôle, utilisez un objet de CButton avec un style d' BS_SPLITBUTTON au lieu d'un objet d' CSplitButton .Implémentez ensuite un gestionnaire pour la notification d' BCN_DROPDOWN dans l'objet d' CButton .Pour plus d'informations, consultez Styles des boutons.
Pour implémenter une action personnalisée que le contrôle bouton partagé lui-même prend en charge, utilisez point d'arrêt de message.Dérivez votre propre classe de la classe d' CSplitButton et nommez-la, par exemple, CMySplitButton.Ajoutez ensuite le mappage de message suivant à votre application de traitement de la notification d' BCN_DROPDOWN :
BEGIN_MESSAGE_MAP(CMySplitButton, CSplitButton)
ON_NOTIFY_REFLECT(BCN_DROPDOWN, &CMySplitButton::OnDropDown)
END_MESSAGE_MAP()