1

CMFCRibbonStatusBarメインフレームに があり、これに を追加しCMFCRibbonButtonsGroupますCMFCRibbonButton。このボタンは、メニュー エントリと同じ ID を持ちます。

ボタンの作成は次のように行われます。

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(""));

このボタンをステータス インジケーターとして使用したいと考えています。

ツールチップを表示したいのは次の2つのケースです。

  • ステータスが変化したときと
  • ユーザーがボタンの上にマウスを移動したとき。

そもそもどうやって始めたらいいのかわからない。ToolTipDemoとサンプル プロジェクトを見てきましたが、ツールバー項目またはダイアログ ボタンのツールチップを表示するだけなので (の代わりに -derived ) DlgToolTips、その方法がわかりませんでした。CWndCMFCRibbonButton

サンプル プロジェクトに精通している場合: いくつかの方法があるように思われるため、このスクリーンショットに示されているようにToolTipDemo、ツールヒントを "拡張ビジュアル マネージャー ベース" のツール ヒントのように表示することをお勧めします。

ありがとう!

4

2 に答える 2

2

マウスカーソルがコントロールの上にない限り、ツールチップを表示することはできないと思います。それはすべて自動的に行われます。

ただし、スクリーンショットのように見栄えの良いツールチップが必要な場合は、次のようにSetToolTipTextandを呼び出す必要がありますSetDescription

CMFCRibbonButton* pBtn = new CMFCRibbonButton(12345, _T(""), 1);
pBtn->SetToolTipText("This is the bold Title");
pBtn->SetDescription("This is the not-so-bold Description");
pGroup->AddButton(pBtn);
于 2009-02-03T00:05:36.637 に答える
0

に追加されたCMFCRibbonButton内でコントロールを使用しています。コンストラクターの 4 番目のパラメーター に注意してください。これは、が呼び出されたかどうかに応じて動作に影響を与えるようです。CMFCRibbonButtonGroupCMFCRibbonStatusBarCMFCRibbonButton()bAlwaysShowDescriptionSetDescription()

具体的には、SetDescription()が呼び出されていない場合bAlwaysShowDescription、TRUE か FALSE かに関係なく、ツール ヒントが表示されます (予想どおり)。SetDescription()が設定されてbAlwaysShowDescriptionいて FALSE の場合、ボタンの上にカーソルを置くと、ツール ヒントが表示され、その下に説明が表示されます。

bAlwaysShowDescriptionこのパラメーターの名前が直感に反しているように見えるのは、これがTRUESetDescription()で設定されている場合、ツール ヒントも説明も表示されないことです。これはこの投稿に関連しているのだろうか: https://connect.microsoft.com/VisualStudio/feedback/details/399646/cmfcribbonbutton-wont-show-tooltip-if-balwaysshowdescription-1

bAlwaysShowDescriptionこれが役に立ち、パラメーターと設定されているかどうかのさまざまな組み合わせで必要なものを達成できることを願っていますSetDescription()

于 2012-07-05T23:20:29.047 に答える