派生的窗口选件类
您可以创建 windows 直接从 CWnd,或者从 CWnd派生新窗口类。 这是如何通常创建自己的自定义窗口。 但是,用于帧计划的大多数 windows 从一个 CWnd- MFC 提供的派生框架窗口类中创建。
框架窗口类
CFrameWnd
用于 SDI 帧单个文档框架窗口及其视图。 框架窗口是应用程序的主框架窗口,并且框架窗口当前文件。CMDIFrameWnd
用作主框架窗口在 MDI 应用程序。 主框架窗口是所有 MDI 的容器文档窗口和共享其与它们的菜单栏。 MDI 框架窗口是在桌面上的顶级窗口。CMDIChildWnd
用于单个在 MDI 主框架窗口文档打开。 每个文档,并且其视图由 MDI 主框架窗口中包含的 MDI 子框架窗口配置。 这与典型的框架窗口的 MDI 子窗口查找,但包含在 MDI 框架窗口中而不是桌面。 但是, MDI 子窗口没有自己的菜单栏并且必须共享包含它的 MDI 框架窗口的菜单栏。有关更多信息,请参见 框架窗口。
从 CWnd 派生的其他窗口类
除了框架窗口外,窗口还有其他一些主要类别 CWnd从派生:
视图
视图创建使用 CWnd派生类及其派生类 CView (或)。 视图附加到文档并为文档和用户之间的中间方。 视图是窗口的子窗口 (不是 MDI 子窗体)。通常加载 SDI 框架窗口的工作区或 MDI 子框架窗口 (或工具栏和状态栏中未包含的客户端区域的该部分)。对话框
使用 CWnd派生类 CDialog,对话框创建。Forms
使用类 CFormView、 CRecordView或 CDaoRecordView,从而基于对话框模板资源的视图 (例如,对话框,创建。控件
控件 (例如,按钮、列表框,并且,组合框创建使用从 CWnd派生的其他类。 控件主题参见。控制条
包含控件的子窗口。 示例包括工具栏和状态栏。 控制条参见。
窗口类层次结构
请参见 MFC 引用 中的 MFC 层次结构图。 视图中 文档/视图结构解释。 在对话框 对话框解释。
创建您的专用窗口类
除类库提供的窗口类以外,您可能需要私有子窗口。 若要创建此类窗口,请创建您的 CWnd派生类并使其成为子窗口框架或查看。 记住框架管理文档框架窗口的工作区的区域。 大部分客户端区域由视图管理,但是,其他窗口,例如控件条或您的自定义窗口,可以使用视图共享空间。 您在框架窗口的工作区可能需要在类 CView 和 CControlBar 的结构交互确定的子窗口。
这些托管创建窗口 讨论 windows 对象的创建和窗口。