CMFCCaptionBar 類別
CMFCCaptionBar 物件是可顯示三個項目的控制列:按鈕、文字標籤和點陣圖。 它可以一次只會顯示每個型別的項目。 您可以對齊每個項目加入至控制項的左邊緣或右邊緣或到中央。 您也可以將一個平台或 3D 樣式套用至標題列上方與下方邊界。
class CMFCCaptionBar : public CPane
Members
公用方法
名稱 |
描述 |
---|---|
建立標題列控制項並將其附加至 CMFCCaptionBar物件。 |
|
表示另一個窗格是否可以動態地插入標題列及其父框架之間。 覆寫 ( CBasePane::DoesAllowDynInsertBefore)。 |
|
啟用或停用在標題列中的按鈕。 |
|
傳回指定項目的對齊方式。 |
|
傳回現用視窗的框線大小。 |
|
擷取按鈕的週框 (Bounding Rectangle) 標題列。 |
|
傳回標題列項目的框線和標題列控制項的框線之間的距離。 |
|
指定標題列是否在訊息列模式。 |
|
從標題列移除點陣圖影像。 |
|
從標題列移除按鈕。 |
|
從標題列移除圖示。 |
|
從標題列中的文字標籤。 |
|
設定標題列的點陣圖影像。 |
|
設定標題列的框線大小。 |
|
設定標題列上的按鈕。 |
|
指定按鈕保持是否按下。 |
|
設定按鈕的工具提示。 |
|
設定標題列的框線樣式。 |
|
設定標題列圖示。 |
|
設定影像的工具提示標題列。 |
|
設定標題列項目的框線和標題列控制項的框線之間的距離。 |
|
設定標題列的文字標籤。 |
受保護的方法
名稱 |
描述 |
---|---|
由架構呼叫以填滿標題列的背景。 |
|
由架構呼叫以繪製標題列的框線。 |
|
由架構呼叫以繪製標題列按鈕。 |
|
由架構呼叫以繪製標題列影像。 |
|
由架構呼叫以繪製標題列文字。 |
資料成員
名稱 |
描述 |
---|---|
標題列的背景色彩。 |
|
標題列的框線色彩。 |
|
標題列文字的色彩。 |
備註
若要建立標題列,請依照下列步驟執行:
建構 CMFCCaptionBar 物件。 通常,您會將標題列加入框架視窗類別。
呼叫 CMFCCaptionBar::Create 方法建立標題列控制項並將它附加至 CMFCCaptionBar 物件。
呼叫 CMFCCaptionBar::SetButton、 CMFCCaptionBar::SetText、 CMFCCaptionBar::SetIcon和 CMFCCaptionBar::SetBitmap 設定標題列項目。
當您將按鈕項目,您必須指定命令 ID 加入至按鈕。 當使用者按一下按鈕時,標題列傳送具有此 ID 加入至父框架視窗的 WM_COMMAND 訊息。
標題列在訊息列模式也可以運作,模擬訊息列出現在 Microsoft Office 2007 應用程式。 在訊息列模式,標題列中顯示點陣圖、訊息和通常會開啟對話方塊的按鈕)。(您可以將工具提示加入至點陣圖。
若要啟用訊息列方式,請呼叫 CMFCCaptionBar::Create 並將第四個參數 (bIsMessageBarMode) 到 TRUE。
範例
下列範例在 CMFCCaptionBar 類別示範如何使用各種方法。 這個範例顯示如何建立標題列控制項,將標題列之 3D 框線,請將距離,以像素為單位),在標題列項目的框線之間,以及標題列控制項,集合的邊緣標題列上的按鈕,請將按鈕的工具提示,設定標題列的文字標籤,則設定標題列的點陣圖影像,並設定影像的工具提示中的標題列。 這個程式碼片段是 MS Office 2007 示範範例的一部分。
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;
}
繼承階層架構
需求
標題: afxcaptionbar.h