分享方式:


CDialogBar 類別

在控制列中提供 Windows 非強制回應對話方塊的功能。

語法

class CDialogBar : public CControlBar

成員

公用建構函式

名稱 描述
CDialogBar::CDialogBar 建構 CDialogBar 物件。

公用方法

名稱 描述
CDialogBar::Create 建立 Windows 對話方塊列,並將它附加至 CDialogBar 物件。

備註

對話框列類似於對話框中的對話框,其中包含用戶可以在之間索引卷標的標準 Windows 控制件。 另一個相似之處是,您建立對話框範本來代表對話框列。

建立和使用對話框列類似於建立和使用 CFormView 物件。 首先,使用 對話框編輯器 來定義具有樣式WS_CHILD且沒有其他樣式的對話範本。 範本不得有樣式WS_VISIBLE。 在您的應用程式程式代碼中,呼叫 建構函式來建構 CDialogBar 物件,然後呼叫 Create 以建立對話框列視窗,並將它附加至 CDialogBar 物件。

如需 的詳細資訊CDialogBar,請參閱對話框列和技術附註 31、控制列一文。

注意

在目前版本中, CDialogBar 對象無法裝載 Windows Forms 控制件。 如需 Visual C++ 中 Windows Forms 控件的詳細資訊,請參閱 在 MFC 中使用 Windows Form 使用者控件。

繼承階層架構

CObject

CCmdTarget

CWnd

CControlBar

CDialogBar

需求

標頭: afxext.h

CDialogBar::CDialogBar

建構 CDialogBar 物件。

CDialogBar();

CDialogBar::Create

載入 或 nIDTemplatelpszTemplateName指定的對話框資源範本,建立對話框列視窗、設定其樣式,並將它與 CDialogBar 對象產生關聯。

virtual BOOL Create(
    CWnd* pParentWnd,
    LPCTSTR lpszTemplateName,
    UINT nStyle,
    UINT nID);

virtual BOOL Create(
    CWnd* pParentWnd,
    UINT nIDTemplate,
    UINT nStyle,
    UINT nID);

參數

pParentWnd
CWnd 物件的指標。

lpszTemplateName
物件對話框資源範本名稱的 CDialogBar 指標。

nStyle
工具列樣式。 支援的其他工具列樣式如下:

  • CBRS_TOP控制列位於框架視窗頂端。

  • CBRS_BOTTOM控制列位於框架視窗底部。

  • CBRS_NOALIGN當父項重設大小時,不會重新定位控制列。

  • CBRS_TOOLTIPS控制列會顯示工具提示。

  • CBRS_SIZE_DYNAMIC控制列是動態的。

  • CBRS_SIZE_FIXED控制列已修正。

  • CBRS_FLOATING控制列浮動。

  • CBRS_FLYBY狀態列會顯示按鈕的相關信息。

  • CBRS_HIDE_INPLACE控件列不會向用戶顯示。

nID
對話框列的控件識別碼。

nIDTemplate
物件對話框範本的資源識別碼 CDialogBar

傳回值

如果成功則為非零;否則為 0。

備註

如果您指定CBRS_TOP或CBRS_BOTTOM對齊樣式,對話框的寬度就是框架視窗的寬度,而其高度則是 nIDTemplate指定的資源。 如果您指定CBRS_LEFT或CBRS_RIGHT對齊樣式,對話框欄的高度就是框架視窗的高度,而其寬度則是 nIDTemplate指定的資源。

範例

int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
   if (CMDIFrameWnd::OnCreate(lpCreateStruct) == -1)
      return -1;

   EnableDocking(CBRS_ALIGN_ANY);

   // m_wndDlgBar is a CDialogBar member of CMainFrame
   // IDD_DIALOGBAR - Resource ID of the dialog
   // template. This dialog template should be created
   // with  the  style  WS_CHILD and no other style.
   // The template must not have the style WS_VISIBLE.
   if (!m_wndDlgBar.Create(this, IDD_DIALOGBAR,
                           CBRS_LEFT | CBRS_TOOLTIPS | CBRS_FLYBY, IDD_DIALOGBAR))
   {
      TRACE0("Failed to create DlgBar\n");
      return -1; // Fail to create.
   }

   return 0;
}

另請參閱

MFC 範例 CTRLBARS
CControlBar Class
階層架構圖表
CFormView 類別
CControlBar Class