CMFCMenuButton, classe
Un bouton qui affiche un menu contextuel et des rapports sur les sélections de menu de l'utilisateur.
class CMFCMenuButton : public CMFCButton
Membres
Constructeurs publics
Nom |
Description |
---|---|
Construit un objet CMFCMenuButton. |
Méthodes publiques
Nom |
Description |
---|---|
Appelé par l'infrastructure pour convertir des messages de fenêtre pour qu'ils soient distribués. (Substitutions CMFCButton::PreTranslateMessage.) |
|
Modifie la taille du bouton en fonction de son texte et sa taille de l'image. |
Membres de données
Nom |
Description |
---|---|
Spécifie s'il faut afficher le menu contextuel par défaut du système ou utiliser CContextMenuManager::TrackPopupMenu. |
|
Sous spécifie si le menu contextuel apparaît ou à droite du bouton. |
|
Spécifie si le bouton de menu remplace son état après que l'utilisateur relâche le bouton. |
|
Un handle au menu joint. |
|
Un identificateur qui indique que l'élément sélectionné par l'utilisateur dans le menu contextuel. |
Notes
La classe d' CMFCMenuButton est dérivée de CMFCButton, classe qui est ensuite dérivée de CButton, classe. Par conséquent, vous pouvez utiliser CMFCMenuButton dans votre code de la même manière que vous utiliseriez CButton.
Lorsque vous créez CMFCMenuButton, vous devez passer dans un handle dans le menu contextuel associé. Ensuite, appelez la fonction CMFCMenuButton::SizeToContent. CMFCMenuButton::SizeToContent vérifie que la taille du bouton est suffisante pour inclure une flèche qui pointe vers l'emplacement où la fenêtre contextuelle apparaît (à savoir, sous ou à droite du bouton.
Exemple
L'exemple suivant montre comment définir le handle du menu joint au bouton, redimensionner le bouton en fonction de son texte et sa taille de l'image, et définir le menu contextuel qui s'affiche par l'infrastructure. Cet extrait de code fait partie d' Nouvel exemples de contrôles.
CMFCMenuButton m_btnMenu;
...
// CMenu m_menu
m_btnMenu.m_hMenu = m_menu.GetSubMenu(0)->GetSafeHmenu();
m_btnMenu.SizeToContent();
// set to FALSE so that the framework calls CContextMenuManager::TrackPopupMenu
// to display its menu
m_btnMenu.m_bOSMenu = FALSE;
Hiérarchie d'héritage
Configuration requise
En-tête : afxmenubutton.h