CMFCToolBarMenuButton, classe
Bouton de barre d'outils qui contient un menu contextuel. Pour plus d’informations, consultez le code source situé dans le dossier VC\atlmfc\src\mfc de votre installation de Visual Studio.
Syntaxe
class CMFCToolBarMenuButton : public CMFCToolBarButton
Membres
Constructeurs publics
Nom | Description |
---|---|
CMFCToolBarMenuButton ::CMFCToolBarMenuButton | Construit un objet CMFCToolBarMenuButton . |
Méthodes publiques
Nom | Description |
---|---|
CMFCToolBarMenuButton ::CompareWith | Compare cette instance à l’objet fourni CMFCToolBarButton . (Remplacements CMFCToolBarButton ::CompareWith.) |
CMFCToolBarMenuButton ::CopyFrom | Copie les propriétés d’un autre bouton de barre d’outils vers le bouton actif. (Remplacements CMFCToolBarButton ::CopyFrom.) |
CMFCToolBarMenuButton ::CreateFromMenu | Initialise le menu de la barre d’outils à partir d’un handle de menu Windows. |
CMFCToolBarMenuButton ::CreateMenu | Crée un menu Windows qui se compose des commandes dans le menu de la barre d’outils. Retourne un handle dans le menu Windows. |
CMFCToolBarMenuButton ::CreatePopupMenu | Crée un objet de menu contextuel ( classe CMFCPopupMenu) pour afficher le menu de la barre d’outils. |
CMFCToolBarMenuButton ::EnableQuickCustomize | |
CMFCToolBarMenuButton ::GetCommands | Donne un accès en lecture seule à la liste des commandes dans le menu de la barre d’outils. |
CMFCToolBarMenuButton ::GetImageRect | Récupère le rectangle englobant de l’image de bouton. |
CMFCToolBarMenuButton ::GetPaletteRows | Retourne le nombre de lignes dans le menu contextuel lorsque le menu est en mode palette. |
CMFCToolBarMenuButton ::GetPopupMenu | Retourne un pointeur vers l’objet de menu contextuel associé au bouton. |
CMFCToolBarMenuButton ::HasButton | |
CMFCToolBarMenuButton ::HaveHotBorder | Détermine si une bordure du bouton s’affiche lorsqu’un utilisateur sélectionne le bouton. (Remplacements CMFCToolBarButton ::HaveHotBorder.) |
CMFCToolBarMenuButton ::IsBorder | |
CMFCToolBarMenuButton ::IsClickedOnMenu | |
CMFCToolBarMenuButton ::IsDroppedDown | Détermine si le menu contextuel s’affiche. |
CMFCToolBarMenuButton ::IsEmptyMenuAllowed | Appelé par l’infrastructure pour déterminer si un utilisateur peut ouvrir un sous-menu à partir de l’élément de menu sélectionné. |
CMFCToolBarMenuButton ::IsExclusive | Détermine si le bouton est en mode exclusif, autrement dit, si le menu contextuel reste ouvert même lorsque l’utilisateur déplace le pointeur sur une autre barre d’outils ou un autre bouton. |
CMFCToolBarMenuButton ::IsMenuPaletteMode | Détermine si le menu contextuel est en mode palette. |
CMFCToolBarMenuButton ::IsQuickMode | |
CMFCToolBarMenuButton ::IsTearOffMenu | Détermine si le menu contextuel comporte une barre de déchirure. |
CMFCToolBarMenuButton ::OnAfterCreatePopupMenu | |
CMFCToolBarMenuButton ::OnBeforeDrag | Spécifie si le bouton peut être déplacé. (Remplacements CMFCToolBarButton ::OnBeforeDrag.) |
CMFCToolBarMenuButton ::OnCalculateSize | Appelé par l’infrastructure pour calculer la taille du bouton pour le contexte de l’appareil spécifié et l’état d’ancrage. (Remplacements CMFCToolBarButton ::OnCalculateSize.) |
CMFCToolBarMenuButton ::OnCancelMode | Appelé par l’infrastructure pour gérer le message WM_CANCELMODE . (Remplacements CMFCToolBarButton ::OnCancelMode.) |
CMFCToolBarMenuButton ::OnChangeParentWnd | Appelé par l’infrastructure lorsque le bouton est inséré dans une nouvelle barre d’outils. (Remplacements CMFCToolBarButton ::OnChangeParentWnd.) |
CMFCToolBarMenuButton ::OnClick | Appelé par l’infrastructure lorsque l’utilisateur clique sur le bouton de la souris. (Remplacements CMFCToolBarButton ::OnClick.) |
CMFCToolBarMenuButton ::OnClickMenuItem | Appelé par l’infrastructure lorsque l’utilisateur sélectionne un élément dans le menu contextuel. |
CMFCToolBarMenuButton ::OnContextHelp | Appelé par l’infrastructure lorsque la barre d’outils parent gère un message WM_HELPHITTEST. (Remplacements CMFCToolBarButton ::OnContextHelp.) |
CMFCToolBarMenuButton ::OnDraw | Appelé par l’infrastructure pour dessiner le bouton à l’aide des styles et options spécifiés. (Remplacements CMFCToolBarButton ::OnDraw.) |
CMFCToolBarMenuButton ::OnDrawOnCustomizeList | Appelé par l’infrastructure pour dessiner le bouton dans le volet Commandes de la boîte de dialogue Personnaliser . (Remplacements CMFCToolBarButton ::OnDrawOnCustomizeList.) |
CMFCToolBarMenuButton ::OpenPopupMenu | Appelé par l’infrastructure lorsque l’utilisateur ouvre le menu contextuel. |
CMFCToolBarMenuButton ::ResetImageToDefault | Définit la valeur par défaut de l’image associée au bouton. (Remplacements CMFCToolBarButton ::ResetImageToDefault.) |
CMFCToolBarMenuButton ::SaveBarState | Enregistre l’état du bouton de barre d’outils. (Remplacements CMFCToolBarButton ::SaveBarState.) |
CMFCToolBarMenuButton ::Serialize | Lit cet objet à partir d’une archive ou l’écrit dans une archive. (Remplacements CMFCToolBarButton ::Serialize.) |
CMFCToolBarMenuButton ::SetACCData | Remplit l’objet fourni CAccessibilityData avec des données d’accessibilité à partir du bouton de barre d’outils. (Remplacements CMFCToolBarButton ::SetACCData.) |
CMFCToolBarMenuButton ::SetMenuOnly | Spécifie si le bouton peut être ajouté à une barre d’outils. |
CMFCToolBarMenuButton ::SetMenuPaletteMode | Spécifie si le menu contextuel est en mode palette. |
CMFCToolBarMenuButton ::SetMessageWnd | |
CMFCToolBarMenuButton ::SetRadio | Force le bouton de menu de la barre d’outils à afficher une icône indiquant qu’il est sélectionné. |
CMFCToolBarMenuButton ::SetTearOff | Spécifie un ID de barre de déchirure pour le menu contextuel. |
Méthodes protégées
Nom | Description |
---|---|
CMFCToolBarMenuButton ::D rawDocumentIcon | Dessine une icône sur le bouton de menu. |
Données membres
Nom | Description |
---|---|
CMFCToolBarMenuButton ::m_bAlwaysCallOwnerDraw | Si la valeur est TRUE, l’infrastructure appelle toujours CFrameWndEx ::OnDrawMenuImage lorsqu’un bouton est dessiné. |
Notes
Un CMFCToolBarMenuButton
peut apparaître sous la forme d’un menu, d’un élément de menu doté d’un sous-menu, d’un bouton qui exécute une commande ou d’un menu ou d’un bouton qui affiche uniquement un menu. Vous déterminez le comportement et l’apparence du bouton de menu en spécifiant des paramètres tels que l’image, le texte, le handle de menu et l’ID de commande associé au bouton dans le constructeur CMFCToolbarMenuButton::CMFCToolbarMenuButton
.
Une classe personnalisée dérivée de la CMFCToolbarMenuButton
classe doit utiliser la macro DECLARE_SERIAL . La macro DECLARE_DYNCREATE génère une erreur lorsque l’application se ferme.
Exemple
L’exemple suivant montre comment configurer un CMFCToolBarMenuButton
objet. Le code montre comment spécifier que le menu déroulant est en mode palette et spécifier l’ID de la barre de déchirure créée lorsque l’utilisateur fait glisser le bouton de menu hors d’une barre de menus. Cet extrait de code fait partie de l’ exemple Word Pad.
pBorderType->SetMenuPaletteMode(TRUE, 2 /* Rows number */);
pBorderType->SetTearOff(ID_BORDER_TEAROFF);
Hiérarchie d'héritage
Spécifications
En-tête : afxtoolbarmenubutton.h
CMFCToolBarMenuButton ::CMFCToolBarMenuButton
Construit un objet CMFCToolBarMenuButton
.
CMFCToolBarMenuButton();
CMFCToolBarMenuButton(const CMFCToolBarMenuButton& src);
CMFCToolBarMenuButton(
UINT uiID,
HMENU hMenu,
int iImage,
LPCTSTR lpszText=NULL,
BOOL bUserButton=FALSE);
Paramètres
src
[in] Objet existant CMFCToolBarMenuButton
à copier dans cet CMFCToolBarMenuButton
objet.
uiID
[in] ID de la commande à exécuter lorsqu’un utilisateur clique sur le bouton ; ou (UINT)-1 pour un bouton de menu qui n’exécute pas directement une commande.
hMenu
[in] Handle vers un menu ; ou NULL si le bouton n’a pas de menu.
iImage
[in] Index de l’image pour le bouton ; ou -1 si ce bouton n’a pas d’icône ou utilise l’icône pour la commande spécifiée par uiID. L’index est le même pour chaque CMFCToolBarImages
objet de votre application.
lpszText
[in] Texte du bouton du menu de la barre d’outils.
bUserButton
[in] TRUE si le bouton affiche une image définie par l’utilisateur ; FALSE si le bouton affiche une image prédéfinie associée à la commande spécifiée par uiID.
Notes
Si uiID est un ID de commande valide, le bouton effectue cette commande lorsque l’utilisateur clique dessus. Si hMenu est une poignée de menu valide, le bouton fournit un menu déroulant lorsqu’il apparaît dans une barre d’outils ou un sous-menu lorsqu’il apparaît dans un menu. Si uiID et hMenu sont valides, le bouton est un bouton fractionné avec une partie qui effectuera la commande lorsque l’utilisateur clique dessus et une partie avec une flèche vers le bas qui déposera un menu lorsque l’utilisateur clique dessus. Toutefois, si hMenu est valide, un utilisateur ne peut pas cliquer sur le bouton pour exécuter une commande lorsque le bouton est inséré dans un menu.
Exemple
L’exemple suivant montre comment construire un objet de la CMFCToolBarMenuButton
classe. Cet extrait de code fait partie de l’ exemple Word Pad.
CMFCToolBarMenuButton *pBorderType = new CMFCToolBarMenuButton(ID_BORDER_1, pPopup->GetSafeHmenu(),
GetCmdMgr()->GetCmdImage(ID_BORDER_1, FALSE),
_T("Borders"));
CMFCToolBarMenuButton ::CompareWith
virtual BOOL CompareWith(const CMFCToolBarButton& other) const;
Paramètres
[in] autre
Valeur de retour
Notes
CMFCToolBarMenuButton ::CopyFrom
virtual void CopyFrom(const CMFCToolBarButton& src);
Paramètres
[in] src
Notes
CMFCToolBarMenuButton ::CreateFromMenu
Initialise le menu de la barre d’outils à partir d’un handle de menu Windows.
virtual void CreateFromMenu(HMENU hMenu);
Paramètres
hMenu
[in] Handle vers un menu.
Notes
Un bouton de menu de barre d’outils peut afficher un sous-menu déroulant.
L’infrastructure appelle cette méthode pour initialiser les commandes dans le sous-menu à partir d’un menu.
CMFCToolBarMenuButton ::CreateMenu
Crée un menu qui se compose des commandes du menu de la barre d’outils. Retourne un handle dans le menu.
virtual HMENU CreateMenu() const;
Valeur de retour
Handle du menu en cas de réussite. NULL si la liste des commandes associées au bouton de menu de la barre d’outils est vide.
Notes
Vous pouvez remplacer cette méthode dans une classe dérivée pour personnaliser la façon dont le menu est généré.
CMFCToolBarMenuButton ::CreatePopupMenu
Crée un CMFCPopupMenu
objet pour afficher le menu de la barre d’outils.
virtual CMFCPopupMenu* CreatePopupMenu();
Valeur de retour
Pointeur vers un CMFCPopupMenu
objet qui affiche le menu déroulant associé au bouton de menu de la barre d’outils.
Notes
Cette méthode est appelée par l’infrastructure pour préparer l’affichage du menu déroulant associé au bouton.
L’implémentation par défaut construit et retourne un nouvel CMFCPopupMenu
objet. Remplacez cette méthode si vous souhaitez utiliser un type dérivé de la classe CMFCPopupMenu ou pour effectuer une initialisation supplémentaire.
CMFCToolBarMenuButton ::D rawDocumentIcon
Dessine une icône de document sur le bouton de menu.
void DrawDocumentIcon(
CDC* pDC,
const CRect& rectImage,
HICON hIcon);
Paramètres
pDC
[in] Pointeur vers le contexte de l’appareil.
rectImage
[in] Coordonnées du rectangle englobant d’image.
hIcon
[in] Handle vers l’icône.
Notes
Cette méthode prend une icône de document et la dessine sur le bouton de menu, centrée dans la zone spécifiée par rectImage.
CMFCToolBarMenuButton ::EnableQuickCustomize
void EnableQuickCustomize();
Notes
CMFCToolBarMenuButton ::HasButton
virtual BOOL HasButton() const;
Valeur de retour
Notes
CMFCToolBarMenuButton ::HaveHotBorder
virtual BOOL HaveHotBorder() const;
Valeur de retour
Notes
CMFCToolBarMenuButton ::IsBorder
virtual BOOL IsBorder() const;
Valeur de retour
Notes
CMFCToolBarMenuButton ::IsClickedOnMenu
BOOL IsClickedOnMenu() const;
Valeur de retour
Notes
CMFCToolBarMenuButton ::IsQuickMode
BOOL IsQuickMode();
Valeur de retour
Notes
CMFCToolBarMenuButton ::GetCommands
Donne un accès en lecture seule à la liste des commandes dans le menu de la barre d’outils.
const CObList& GetCommands() const;
Valeur de retour
Référence const à un objet CObList Class , qui contient une collection d’objets CMFCToolBarButton Class .
Notes
Un bouton de menu de barre d’outils peut afficher un sous-menu. Vous pouvez fournir la liste des commandes dans le sous-menu du constructeur ou dans CMFCToolBarMenuButton ::CreateFromMenu en tant que handle dans un menu (HMENU). Le menu est converti en une liste d’objets dérivés de la classe CMFCToolBarButton et stockés dans l’objet interne CObList
. Vous pouvez accéder à cette liste en appelant cette méthode.
CMFCToolBarMenuButton ::GetImageRect
Récupère le rectangle englobant de l’image de bouton.
void GetImageRect(CRect& rectImage);
Paramètres
rectImage
[out] Référence à un CRect
objet qui reçoit les coordonnées du rectangle englobant de l’image.
CMFCToolBarMenuButton ::GetPaletteRows
Retourne le nombre de lignes dans le menu déroulant lorsque le menu est en mode palette.
int GetPaletteRows() const;
Valeur de retour
Nombre de lignes dans la palette.
Notes
Lorsque le bouton de menu est défini sur le mode palette, les éléments de menu apparaissent dans plusieurs colonnes avec seulement un nombre limité de lignes. Appelez cette méthode pour obtenir le nombre de lignes. Vous pouvez activer ou désactiver le mode palette et spécifier le nombre de lignes à l’aide de CMFCToolBarMenuButton ::SetMenuPaletteMode.
CMFCToolBarMenuButton ::GetPopupMenu
Renvoie un pointeur vers l’objet CMFCPopupMenu Class qui représente le menu déroulant du bouton.
CMFCPopupMenu* GetPopupMenu() const;
Valeur de retour
Pointeur vers un objet CMFCPopupMenu Class créé lorsque l’infrastructure a dessiné le sous-menu du bouton de menu de la barre d’outils ; NULL si aucun sous-menu n’est affiché.
Notes
Lorsqu’un bouton de menu de barre d’outils affiche un menu déroulant, le bouton crée un objet CMFCPopupMenu Class pour représenter le menu. Appelez cette méthode pour obtenir un pointeur vers l’objet CMFCPopupMenu
. Vous ne devez pas stocker le pointeur retourné, car il est temporaire et devient non valide lorsque l’utilisateur ferme le menu déroulant.
CMFCToolBarMenuButton ::IsDroppedDown
Indique si le menu contextuel est actuellement affiché.
virtual BOOL IsDroppedDown() const;
Valeur de retour
TRUE si le bouton du menu de la barre d’outils affiche son sous-menu ; sinon FALSE.
CMFCToolBarMenuButton ::IsEmptyMenuAllowed
Spécifie si les éléments de menu affichent des sous-menus vides.
virtual BOOL IsEmptyMenuAllowed() const;
Valeur de retour
TRUE si l’infrastructure ouvre un sous-menu à partir de l’élément de menu actuellement sélectionné même lorsque le sous-menu est vide ; sinon FALSE.
Notes
L’infrastructure appelle cette méthode lorsqu’un utilisateur tente d’ouvrir le sous-menu à partir de l’élément de menu actuellement sélectionné. Si le sous-menu est vide et IsEmptyMenuAllowed
retourne FALSE, le sous-menu ne s’ouvre pas.
L’implémentation par défaut retourne FALSE. Remplacez cette méthode pour personnaliser ce comportement.
CMFCToolBarMenuButton ::IsExclusive
Indique si le bouton est en mode exclusif.
virtual BOOL IsExclusive() const;
Valeur de retour
TRUE si le bouton fonctionne en mode exclusif ; sinon FALSE.
Notes
Lorsqu’un utilisateur ouvre un menu contextuel pour un bouton, puis déplace le pointeur de la souris sur un autre bouton de barre d’outils ou de menu, le menu contextuel se ferme, sauf si le bouton est en mode exclusif.
L’implémentation par défaut retourne toujours FALSE. Remplacez cette méthode dans une classe dérivée si vous souhaitez activer le mode exclusif.
CMFCToolBarMenuButton ::IsMenuPaletteMode
Détermine si le menu déroulant est en mode palette.
BOOL IsMenuPaletteMode() const;
Valeur de retour
TRUE si le mode palette est activé, sinon FALSE.
Notes
Lorsque le bouton de menu est défini sur le mode palette, les éléments de menu apparaissent dans plusieurs colonnes avec seulement un nombre limité de lignes. Appelez cette méthode pour obtenir le nombre de lignes. Vous pouvez activer ou désactiver le mode palette en appelant CMFCToolBarMenuButton ::SetMenuPaletteMode.
CMFCToolBarMenuButton ::IsTearOffMenu
Indique si le menu déroulant comporte une barre de déchirure.
virtual BOOL IsTearOffMenu() const;
Valeur de retour
TRUE si le bouton du menu de la barre d’outils comporte une barre de déchirure ; sinon FALSE.
Notes
Pour activer la fonctionnalité de déchirure et définir l’ID de la barre de déchirure, appelez CMFCToolBarMenuButton ::SetTearOff.
CMFCToolBarMenuButton ::m_bAlwaysCallOwnerDraw
Spécifie si l’infrastructure appelle toujours CFrameWndEx ::OnDrawMenuImage lorsqu’un bouton est dessiné.
static BOOL m_bAlwaysCallOwnerDraw;
Notes
Lorsque cette variable membre a la valeur TRUE, le bouton appelle toujours la méthode CFrameWndEx ::OnDrawMenuImage pour afficher l’image sur le bouton. Quand m_bAlwaysCallOwnerDraw
la valeur est FALSE, le bouton lui-même dessine l’image si l’image est prédéfinie. Sinon, il appelle OnDrawMenuImage
.
CMFCToolBarMenuButton ::OnAfterCreatePopupMenu
virtual void OnAfterCreatePopupMenu();
Notes
CMFCToolBarMenuButton ::OnBeforeDrag
virtual BOOL OnBeforeDrag() const;
Valeur de retour
Notes
CMFCToolBarMenuButton ::OnCalculateSize
virtual SIZE OnCalculateSize(
CDC* pDC,
const CSize& sizeDefault,
BOOL bHorz);
Paramètres
[in] pDC
[in] sizeDefault
[in] bHorz
Valeur de retour
Notes
CMFCToolBarMenuButton ::OnCancelMode
virtual void OnCancelMode();
Notes
CMFCToolBarMenuButton ::OnChangeParentWnd
virtual void OnChangeParentWnd(CWnd* pWndParent);
Paramètres
[in] pWndParent
Notes
CMFCToolBarMenuButton ::OnClick
virtual BOOL OnClick(
CWnd* pWnd,
BOOL bDelay = TRUE);
Paramètres
[in] pWnd
[in] bDelay
Valeur de retour
Notes
CMFCToolBarMenuButton ::OnClickMenuItem
Appelé par l’infrastructure lorsque l’utilisateur sélectionne un élément dans le menu déroulant.
virtual BOOL OnClickMenuItem();
Valeur de retour
FALSE si l’infrastructure doit continuer le traitement des éléments de menu par défaut ; sinon TRUE. L’implémentation par défaut retourne toujours FALSE.
Notes
Lorsque l’utilisateur clique sur un élément de menu, l’infrastructure exécute une commande associée à cet élément.
Pour personnaliser le traitement des éléments de menu, remplacez OnClickMenuItem
dans une classe dérivée de CMFCToolBarMenuButton
la classe. Vous devez également remplacer CFrameWndEx ::OnShowPopupMenu et remplacer les boutons de menu qui nécessitent un traitement spécial par des instances de la classe dérivée.
CMFCToolBarMenuButton ::OnContextHelp
virtual BOOL OnContextHelp(CWnd* pWnd);
Paramètres
[in] pWnd
Valeur de retour
Notes
CMFCToolBarMenuButton ::OnDraw
virtual void OnDraw(
CDC* pDC,
const CRect& rect,
CMFCToolBarImages* pImages,
BOOL bHorz = TRUE,
BOOL bCustomizeMode = FALSE,
BOOL bHighlight = FALSE,
BOOL bDrawBorder = TRUE,
BOOL bGrayDisabledButtons = TRUE);
Paramètres
[in] pDC
[in] rect
[in] pImages
[in] bHorz
[in] bCustomizeMode
[in] bHighlight
[in] bDrawBorder
[in] bGrayDisabledButtons
Notes
CMFCToolBarMenuButton ::OnDrawOnCustomizeList
virtual int OnDrawOnCustomizeList(
CDC* pDC,
const CRect& rect,
BOOL bSelected);
Paramètres
[in] pDC
[in] rect
[in] bSelected
Valeur de retour
Notes
CMFCToolBarMenuButton ::OpenPopupMenu
Appelé par l’infrastructure lorsque l’utilisateur ouvre le menu déroulant d’un bouton de menu de barre d’outils.
virtual BOOL OpenPopupMenu(CWnd* pWnd=NULL);
Paramètres
pWnd
[in] Spécifie la fenêtre qui reçoit les commandes du menu déroulant. Elle ne peut être NULL que si le bouton du menu de la barre d’outils possède une fenêtre parente.
Valeur de retour
TRUE lorsqu’un objet CMFCPopupMenu Class a été créé et ouvert avec succès ; sinon FALSE.
Notes
Cette fonction est appelée par l’infrastructure lorsque l’utilisateur ouvre un menu déroulant à partir d’un bouton de menu de barre d’outils.
CMFCToolBarMenuButton ::ResetImageToDefault
virtual void ResetImageToDefault();
Notes
CMFCToolBarMenuButton ::SaveBarState
virtual void SaveBarState();
Notes
L’infrastructure appelle cette méthode lorsqu’elle crée un bouton de barre d’outils à la suite d’une opération de glisser-déplacer. Cette méthode appelle la méthode CMFCPopupMenu ::SaveState du menu contextuel de niveau supérieur, ce qui entraîne la recréation du menu contextuel par le bouton parent du menu contextuel.
CMFCToolBarMenuButton ::Serialize
virtual void Serialize(CArchive& ar);
Paramètres
[in] ar
Notes
CMFCToolBarMenuButton ::SetACCData
Définit les données d’accessibilité de l’élément ruban.
virtual BOOL SetACCData(
CWnd* pParent,
CAccessibilityData& data);
Paramètres
pParent
La fenêtre parente de l’élément ruban.
data
Les données d’accessibilité de l’élément ruban.
Valeur de retour
Retourne toujours TRUE.
Notes
Par défaut, cette méthode définit les données d’accessibilité pour l’élément du ruban et retourne toujours TRUE. Remplacez cette méthode pour définir l’accessibilité des données et retourner une valeur qui indique la réussite ou l’échec.
CMFCToolBarMenuButton ::SetMenuOnly
Spécifie si le bouton est dessiné sous la forme d’un bouton de menu ou d’un bouton fractionné lorsqu’il a à la fois un ID de commande valide et un sous-menu.
void SetMenuOnly(BOOL bMenuOnly);
Paramètres
bMenuOnly
[in] TRUE pour afficher ce bouton en tant que bouton de menu lorsqu’il a à la fois un ID de commande valide et un sous-menu, FALSE pour afficher ce bouton comme bouton fractionné lorsqu’il a à la fois un ID de commande valide et un sous-menu.
Notes
En règle générale, lorsqu’un bouton de menu de barre d’outils comporte à la fois un sous-menu et un ID de commande, le menu semble être un bouton fractionné qui a un bouton principal et un bouton flèche vers le bas attaché. Si vous appelez cette méthode et bMenuOnly a la valeur TRUE, le bouton semble plutôt être un seul bouton de menu avec une flèche vers le bas dans le bouton. Lorsque l’utilisateur clique sur la flèche en mode, le sous-menu s’ouvre et lorsque l’utilisateur clique sur la partie non-flèche du bouton dans l’un ou l’autre mode, l’infrastructure exécute la commande.
CMFCToolBarMenuButton ::SetMenuPaletteMode
Spécifie si le menu déroulant est en mode palette.
void SetMenuPaletteMode(
BOOL bMenuPaletteMode=TRUE,
int nPaletteRows=1);
Paramètres
bMenuPaletteMode
[in] Spécifie si le menu déroulant est en mode palette.
nPaletteRows
[in] Nombre de lignes dans la palette.
Notes
En mode palette, tous les éléments de menu sont affichés sous la forme d’une palette multicolonne. Vous spécifiez le nombre de lignes à l’aide de nPaletteRows.
CMFCToolBarMenuButton ::SetMessageWnd
void SetMessageWnd(CWnd* pWndMessage);
Paramètres
[in] pWndMessage
Notes
CMFCToolBarMenuButton ::SetRadio
Définit le bouton de menu de la barre d’outils pour afficher une icône de style de case d’option lorsqu’elle est cochée.
virtual void SetRadio();
Notes
Lorsque le bouton de menu est dessiné pendant qu’il est activé, il appelle CMFCVisualManager ::OnDrawMenuCheck pour dessiner une icône de coche. Par défaut, OnDrawMenuCheck
demande que le gestionnaire de visuels actuel dessine une coche de style de case à cocher sur le bouton de menu. Après avoir appelé cette méthode, le gestionnaire de visuels actuel dessine plutôt une coche de style de case d’option sur le bouton de menu. Cette modification est irréversible.
Lorsque vous appelez cette méthode et que le bouton de menu est en cours d’affichage, il est actualisé.
CMFCToolBarMenuButton ::SetTearOff
Spécifie l’ID de la barre de déchirure du menu déroulant.
virtual void SetTearOff(UINT uiBarID);
Paramètres
uiBarID
[in] Spécifie un nouvel ID de barre de déchirure.
Notes
Appelez cette méthode pour spécifier l’ID de la barre de déchirure créée lorsque l’utilisateur fait glisser le bouton de menu hors d’une barre de menus. Si le paramètre uiBarID est 0, l’utilisateur ne peut pas supprimer le bouton de menu.
Appelez CWinAppEx ::EnableTearOffMenus pour activer la fonctionnalité de menu déchirure dans votre application.
Voir aussi
Graphique hiérarchique
Classes
CMFCToolBarButton, classe
CMFCToolBar, classe
CMFCPopupMenu, classe