J'ai un CMFCRibbonStatusBar
dans mon ordinateur central auquel j'ajoute un CMFCRibbonButtonsGroup
qui a encore CMFCRibbonButton
. Ce bouton a le même ID qu'une entrée de menu.Comment afficher une info-bulle pour un CMFCRibbonButton dans la barre d'état?
Création du bouton se fait comme suit:
CMFCRibbonButtonsGroup* pBGroup = new CMFCRibbonButtonsGroup();
CMFCToolBarImages images;
images.SetImageSize(CSize(32, 16)); // Non-square bitmaps
if(images.Load(IDB_STATUSBAR_IMAGES))
{
pBGroup->SetImages(&images, NULL, NULL);
}
m_pStatusButton = new CMFCRibbonButton(ID_STATUS_SHOWSTATUS,
_T(""),
IMAGEINDEX_DEFAULTSTATUS);
pBGroup->AddButton(m_pStatusButton);
m_wndStatusBar.AddExtendedElement(pBGroup, _T(""));
Je veux utiliser ce bouton comme un indicateur d'état.
Je veux afficher une infobulle dans les deux cas suivants:
- lorsque les changements d'état et
- lorsque l'utilisateur déplace la souris sur le bouton.
Je n'ai aucune idée de comment commencer en premier lieu. J'ai regardé les exemples de projets ToolTipDemo
et DlgToolTips
, mais je n'ai pas compris comment le faire car tout ce qu'ils font est d'afficher les info-bulles pour les éléments de la barre d'outils ou les boutons de dialogue (CWnd
-dérivé au lieu de CMFCRibbonButton
). Si vous êtes familier avec le projet exemple ToolTipDemo
: Comme il semble y avoir plusieurs façons de faire, je préférerais que l'info-bulle ressemble à l'info-bulle "Extended Visual Manager" comme shown in this screenshot.
Merci!