次の方法で共有


CMFCCaptionBar Class

更新 : 2007 年 11 月

CMFCCaptionBar オブジェクトは、ボタン、テキスト ラベル、ビットマップという 3 つの要素を表示できるコントロール バーです。表示できる各要素の数は 1 つずつです。各要素は、コントロールの左端、右端、または中央に揃えて配置できます。また、キャプション バーの上部または下部の境界線にフラット スタイルまたは 3D スタイルを適用することもできます。

class CMFCCaptionBar : public CPane

メンバ

パブリック メソッド

名前

説明

CMFCCaptionBar::Create

キャプション バー コントロールを作成し、CMFCCaptionBar オブジェクトにアタッチします。

CMFCCaptionBar::DoesAllowDynInsertBefore

別のペインを現在のペインと親フレームの間に動的に挿入できるかどうかを判定します。(CBasePane::DoesAllowDynInsertBefore をオーバーライドします。)

CMFCCaptionBar::EnableButton

キャプション バーのボタンの有効と無効を切り替えます。

CMFCCaptionBar::GetAlignment

指定した要素の配置を返します。

CMFCCaptionBar::GetBorderSize

キャプション バーの境界線のサイズを返します。

CMFCCaptionBar::GetButtonRect

キャプション バーのボタンに外接する四角形を取得します。

CMFCCaptionBar::GetMargin

キャプション バー要素の端からキャプション バー コントロールの端までの距離を返します。

CMFCCaptionBar::IsMessageBarMode

キャプション バーがメッセージ バー モードになっているかどうかを示します。

CMFCCaptionBar::RemoveBitmap

キャプション バーのビットマップ イメージを削除します。

CMFCCaptionBar::RemoveButton

キャプション バーのボタンを削除します。

CMFCCaptionBar::RemoveIcon

キャプション バーのアイコンを削除します。

CMFCCaptionBar::RemoveText

キャプション バーからテキスト ラベルを削除します。

CMFCCaptionBar::SetBitmap

キャプション バーのビットマップ イメージを設定します。

CMFCCaptionBar::SetBorderSize

キャプション バーの境界線のサイズを設定します。

CMFCCaptionBar::SetButton

キャプション バーのボタンを設定します。

CMFCCaptionBar::SetButtonPressed

ボタンを押されたままの状態にするかどうかを指定します。

CMFCCaptionBar::SetButtonToolTip

ボタンのツールヒントを設定します。

CMFCCaptionBar::SetFlatBorder

キャプション バーの境界線スタイルを設定します。

CMFCCaptionBar::SetIcon

キャプション バーのアイコンを設定します。

CMFCCaptionBar::SetImageToolTip

キャプション バーのイメージのツールヒントを設定します。

CMFCCaptionBar::SetMargin

キャプション バー要素の端からキャプション バー コントロールの端までの距離を設定します。

CMFCCaptionBar::SetText

キャプション バーのテキスト ラベルを設定します。

プロテクト メソッド

名前

説明

CMFCCaptionBar::OnDrawBackground

キャプション バーの背景を塗りつぶすために、フレームワークによって呼び出されます。

CMFCCaptionBar::OnDrawBorder

キャプション バーの境界線を描画するために、フレームワークによって呼び出されます。

CMFCCaptionBar::OnDrawButton

キャプション バーのボタンを描画するために、フレームワークによって呼び出されます。

CMFCCaptionBar::OnDrawImage

キャプション バーのイメージを描画するために、フレームワークによって呼び出されます。

CMFCCaptionBar::OnDrawText

キャプション バーのテキストを描画するために、フレームワークによって呼び出されます。

データ メンバ

名前

説明

CMFCCaptionBar::m_clrBarBackground

キャプション バーの背景色。

CMFCCaptionBar::m_clrBarBorder

キャプション バーの境界線の色。

CMFCCaptionBar::m_clrBarText

キャプション バー テキストの色。

解説

キャプション バーは次の手順で作成します。

  1. CMFCCaptionBar オブジェクトを構築します。一般に、キャプション バーはフレーム ウィンドウ クラスに追加します。

  2. CMFCCaptionBar::Create メソッドを使用してキャプション バー コントロールを作成し、それを CMFCCaptionBar オブジェクトに結び付けます。

  3. キャプション バー要素を設定するには、CMFCCaptionBar::SetButtonCMFCCaptionBar::SetTextCMFCCaptionBar::SetIcon、および CMFCCaptionBar::SetBitmap を呼び出します。

ボタン要素を設定する場合は、ボタンにコマンド ID を割り当てる必要があります。ユーザーがボタンをクリックすると、キャプション バーは、この ID を持つ WM_COMMAND メッセージを親フレーム ウィンドウに転送します。

キャプション バーは、メッセージ バー モードでも機能します。このモードは、Microsoft Office 2007 アプリケーションに表示されるメッセージ バーをエミュレートします。メッセージ バー モードのキャプション バーは、ビットマップ、メッセージ、およびボタン (一般的にはダイアログ ボックスを開く) を 1 つずつ表示します。ビットマップにはツールヒントを割り当てることもできます。

メッセージ バー モードを有効にするには、CMFCCaptionBar::Create を呼び出し、4 番目のパラメータ (bIsMessageBarMode) を TRUE に設定します。

使用例

次の例は、CMFCCaptionBar クラスのさまざまなメソッドの使用方法を説明しています。この例では、キャプション バー コントロールの作成、キャプション バーへの 3D 境界線の設定、キャプション バー要素の端とキャプション バー コントロールの端との距離 (ピクセル単位) の設定、キャプション バーのボタンの設定、ボタンのツールヒントの設定、キャプション バーのテキスト ラベルの設定、キャプション バーのテキスト ラベルの設定、およびキャプション バーに含まれるイメージのツールヒントの設定の各手順を示しています。このコード スニペットは、「MSOffice2007Demo サンプル : MFC Office アプリケーション」の一部です。

  CMFCCaptionBar m_wndMessageBar;


...


BOOL CMainFrame::CreateMessageBar()
{
    // The this pointer points to a CMainFrame class which extends the CFrameWndEx class.
    if (!m_wndMessageBar.Create(WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS, this, ID_VIEW_MESSAGEBAR, -1, TRUE))
    {
        TRACE0("Failed to create caption bar\n");
        return FALSE;
    }

    m_wndMessageBar.SetFlatBorder( FALSE );
    m_wndMessageBar.SetMargin(10);
    m_wndMessageBar.SetButton(_T("Options..."), ID_TOOLS_OPTIONS, CMFCCaptionBar::ALIGN_LEFT, FALSE);
    m_wndMessageBar.SetButtonToolTip(_T("Click here to see more options"));

    m_wndMessageBar.SetText(_T("Welcome to the MFC MSOffice2007 demonstration!"), CMFCCaptionBar::ALIGN_LEFT);

    m_wndMessageBar.SetBitmap(IDB_INFO, RGB(255, 255, 255), FALSE, CMFCCaptionBar::ALIGN_LEFT);
    m_wndMessageBar.SetImageToolTip(_T("Important"), _T("Please take a look at MSOffice2007Demo source code to learn how to create advanced user interface in minutes."));

    return TRUE;
}

継承階層

CObject

   CCmdTarget

      CWnd

         CBasePane

            CPane

               CMFCCaptionBar

必要条件

ヘッダー : afxcaptionbar.h

参照

概念

MFC 階層図

その他の技術情報

クラス (MFC Feature Pack)