fo cmdInfo;
if(cmdInfo.m_nShellCommand == CCommandLineInfo::FileNew)
{
cmdInfo.m_nShellCommand = CCommandLineInfo::FileNothing;
}
ParseCommandLine(cmdInfo);
枫叶文学网www.fywxw.com
Visual C++ 6.0 程序设计从入门到精通
·30·
此时程序启动后显示如图2-22 所示。
实例2-4:技巧演示实例。源代码在光盘中“\02\实例2-4\TestMDI”目录下。
图2-22 MDI 启动时不生成新文件示例
2.5 窗口类及其控件栏
框架窗口为应用程序界面提供结构框架,它是应用程序的主窗口,负责管理其包容的窗
口,一个应用程序的最顶层的框架窗口为应用程序启动时创建的第一个窗口。MFC 提供了
CFrcomWnd、CMDIFrcomWnd、CMDIChildWnd 和Cdialog 类,分别用于支持单文档窗口、
多文档窗口和对话框。同时,在基于文档视图的应用框架中也经常用到相关的控件栏,如工
具栏、状态栏等,这些也是应用程序不可缺少的部分。下面将对这些方面进行分别介绍。
2.5.1 主窗口类
主窗口类CMainFrcom 可以应用在SDI 或MDI 结构中。在SDI 框架结构中,CMainFrcom
派生于类CFrcomWnd,形成单个文档及其视图的边框。框架窗口既是应用程序的主框架窗口,
也是当前文档对应的视图的边框。在MDI 框架结构中, CMainFrcom 派生于类
CMDIFrcomWnd,它是所有MDI 文档窗口的容器,并与它们共享菜单条,MDI 框架窗口是
出现在桌面中的顶层窗口。
窗口的创建分为两步:第一步是用new 运算符创建一个窗口对象,但是此时只是初始化
窗口的数据成员,并没有真正创建窗口(这一点与一般的对象有所不同)。
//第一步:创建一个C++对象,其中CMainFrcom 是从CFrcomWnd 派生的对象
CMainFrcom* pMyFrcom=new CMainFrcom();//用new cāo作符创建窗口对象
枫叶文学网www.fywxw.com
第2 章 应用程序基本框架
·31·
或
CMainFrcom MyFrcom;//定义一个窗口对象,自动调用其构造函数
第二步是创建窗口。使CFrcomWnd 的Create 成员函数创建窗口,并将其句柄保存在C
公共数据成员m_hWnd 中。
//第二步:创建窗口
pMyFrcom->Create(NULL,“My Frcom Window”);
或
MyFrcom.Create(NULL,“My Frcom Window”);
2.5.2 子窗口类
子窗口类CChildFrcom 主要用在多文档(MDI)结构中,在单文档中只存在主窗口