衍生的視窗類別

您可以建立直接從 windows CWnd,或衍生新的視窗類別,從CWnd。這通常是建立您自己的自訂視窗的方式。不過,大部分在架構程式中使用的視窗而建立其中一個CWnd-衍生 MFC 所提供的框架視窗類別。

框架視窗類別

  • CFrameWnd
    用於框住一份文件和其檢視的 SDI 框架視窗。框架視窗會是應用程式的主框架視窗和目前的文件的框架視窗。

  • CMDIFrameWnd
    當做 MDI 應用程式的主框架視窗。主框架視窗是容器,所有的 MDI 文件視窗,並與他們共用它的功能表列。MDI 框架視窗會是最上層的視窗會出現在桌面上。

  • CMDIChildWnd
    用於在 MDI 主框架視窗中開啟個別的文件。每份文件和其檢視都包含於 MDI 主框架視窗的 MDI 子框架視窗的框架。MDI 子視窗很像一般的框架視窗,而包含在 MDI 框架視窗而不是出現在桌面上。但是,MDI 子視窗缺少它自己的功能表列,且必須共用包含它的 MDI 框架視窗的功能表列。

    如需詳細資訊,請參閱框架視窗

衍生自 CWnd 的其他視窗類別

除了框架視窗中,數個其他的主要視窗類別衍生自CWnd

  • 檢視
    檢視用來建立CWnd-衍生的類別 CView (或其衍生類別的其中一個)。檢視附加於文件,並做為文件與使用者之間的媒介。檢視是通常填滿工作區的 SDI 框架視窗的 MDI 子框架視窗 (或未涵蓋的工具列和/或狀態列上的工作區的那個部分) 的子視窗 (不 MDI 子系)。

  • 對話方塊
    對話方塊用來建立CWnd-衍生的類別 cdialog 為

  • 表單驗證
    使用類別建立對話方塊範本資源,例如對話方塊,為基礎的表單檢視 CFormViewCRecordView,或 CDaoRecordView

  • 控制項
    例如按鈕、 清單方塊及下拉式方塊控制項使用建立衍生自其他類別的CWnd。請參閱控制項主題

  • 控制列
    包含控制項的子視窗。範例包括工具列和狀態列。請參閱控制列

視窗類別階層架構

請參閱 MFC 階層架構圖MFC 參考手冊 》。檢視將會說明文件/檢視架構。對話方塊將會說明對話方塊

建立您自己的特殊用途視窗類別

除了類別庫所提供的視窗類別,您可能需要特殊用途的子視窗。若要建立這種視窗,請建立您自己 CWnd-衍生的類別,並將它變成一個框架或檢視表的子視窗。請記住架構會管理文件框架視窗的工作區的範圍。大部分的工作區由工作檢視中,但其他的視窗,例如控制列或您自己的自訂視窗可能會共用空間與檢視。類別中的機制進行互動時,您可能需要 CViewCControlBar 以定位在框架視窗的工作區中的子視窗。

建立視窗將告訴您建立視窗物件以及所管理的 Windows 視窗。

請參閱

概念

視窗物件