文档详情

实验二熟悉MFC源程序基本结构.doc

发布:2016-12-14约2.18千字共3页下载文档
文本预览下载声明
实验二 熟悉 MFC 源程序基本结构 实验目的 (1) 熟悉 Visual Studio 开发环境; (2) 熟悉 MFC 源程序基本结构; 实验内容 创建一个空白的 Win32 Application 应用程序,设置在静态链接库或者 DLL 中 使用 MFC,建立文件 Demo.h 和 Demo.cpp 并加入到项目中,按照下面规定的步骤手 工输入代码,实现一个 MFC 应用程序。 1、在 Demo.h 中,基于 CFrameWnd 派生新类 CDemoWnd。 #include afxwin.h class CDemoWnd:public CFrameWnd { public: CDemoWnd(); ~CDemoWnd(); }; 2、在 Demo.cpp 中,实现 CDemoWnd 类的构造函数和析构函数。 #include Demo.h // 构造函数 CDemoWnd::CDemoWnd() { } // 析构函数 CDemoWnd::~CDemoWnd() { } 3、在 Demo.h 中,基于 CWinApp 类派生新类 CDemoApp,声明 InitInstance() 函数,并定义 CDemoApp 的对象 theApp 为全局对象。 class CDemoApp:public CWinApp { public: BOOL InitInstance(); }; CDemoApp theApp; 4、在 Demo.cpp 中,重载 CDemoApp 类的 InitInstance()函数,完成主窗口对 象的创建和初始化。 BOOL CDemoApp::InitInstance() { CDemoWnd *pMainWnd = new CDemoWnd(); pMainWnd-Create(NULL,MFC 演示程序); pMainWnd-ShowWindow(m_nCmdShow); pMainWnd-UpdateWindow(); m_pMainWnd = pMainWnd; return TRUE; } 5、编译并运行程序。 实验结果 列出源程序清单,以及程序的运行结果; 头文件: #include afxwin.h class CDemoWnd:public CFrameWnd { public: CDemoWnd(); ~CDemoWnd(); }; class CDemoApp:public CWinApp { public: BOOL InitInstance(); }; CDemoApp theApp; 源文件: #include Demo.h // 构造函数 CDemoWnd::CDemoWnd() { } // 析构函数 CDemoWnd::~CDemoWnd() { } BOOL CDemoApp::InitInstance() { CDemoWnd *pMainWnd = new CDemoWnd(); pMainWnd-Create(NULL,MFC 演示程序); pMainWnd-ShowWindow(m_nCmdShow); pMainWnd-UpdateWindow(); m_pMainWnd = pMainWnd; return TRUE; } 运行结果: 总结 Windows 源程序的结构特点,说明各个主要程序段的作用; Windows的应用程序具有相对固定的框架,其中由入口函数WinMain、窗口函数WndProc构成基本框架,并包含各种数据类型、数据结构与函数等。入口函数Winmain和窗口函数是Windows应用程序的主体。在MFC编程中,我们主要使用CWinApp和CFrameWnd两个类。 CWinApp 类实现 WinMain 函数的功能。MFC 将 Windows 应用程序从开始运行、 消息传递到结束运行所需的各步骤均封装在 CWinApp 类中,CWinApp 类表示 MFC 应 用程序的应用对象。 用户需要声明 CWinApp 派生类为全局对象。用户从 CWinApp 派生了一个应用程序类之后,需要重载 InitInstance 成员函数来创建应用程序的 主窗口对象。 CFrameWnd 对象提供应用程序主窗口的功能,在派生类中可以使用数据成员保 存数据,使用成员函数处理消息和实现其他功能。 总结实验的心得体会,实验中遇到的困难以及解决的方法等。 由于未学过C++,也没有使用过Visual Studio,所以在实验中出现了很多问题。 error C2664: “CFrameWnd::Create”: 不能将参数 2 从“const char [13]”转换为“LPCTSTR”。对于这个问题,需要将项目/属性/配置属性/常规/字符集,改为使用多字节字符集
显示全部
相似文档