实验8:MFC基本应用程序的建立 .docx

上传人:牧羊曲112 文档编号:5174919 上传时间:2023-06-11 格式:DOCX 页数:7 大小:406.03KB
返回 下载 相关 举报
实验8:MFC基本应用程序的建立 .docx_第1页
第1页 / 共7页
实验8:MFC基本应用程序的建立 .docx_第2页
第2页 / 共7页
实验8:MFC基本应用程序的建立 .docx_第3页
第3页 / 共7页
实验8:MFC基本应用程序的建立 .docx_第4页
第4页 / 共7页
实验8:MFC基本应用程序的建立 .docx_第5页
第5页 / 共7页
亲,该文档总共7页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《实验8:MFC基本应用程序的建立 .docx》由会员分享,可在线阅读,更多相关《实验8:MFC基本应用程序的建立 .docx(7页珍藏版)》请在三一办公上搜索。

1、计算机与信息技术学院综合性、设计性实验报告C=J专业:通信工程年级/班级:2011级通信一班20112012学年第二学期课程名称Visual C+程序设计实验指导教师赵永进本组成员学号姓名实验地点计算机学院机房实验时间6 月 9 日 8: 00-9: 40; 10: 10-11: 50;6 月 16 日 8: 00-9: 40; 10: 10-11: 50。项目名称MFC基本应用程序的建立实验类型综合性一、实验目的1. 理解Windows编程特点,比较命令控制台项目与Windows编程的异同。2. 了解MFC应用程序的消息映射,数据映射,运行时类型检查和诊断信息转 储机制。3. 掌握用AppW

2、izard(exe)创建SDI,MDI以及基于对话框的应用程序的方法。4. 了解SDI和MDI编程,功能等方面的异同。5. 掌握使用项目工作区窗口的ClassView页面的为一个类添加成员的方 法。6. 掌握用ClassWizard映射消息的方法等。二、实验仪器或设备电脑型号:方正Founder PC台式电脑操作系统:Windows XP 专业版 32 位 SP3 ( DirectX 9.0c )实验平台:Microsoft Visual C+6.0(SP6)处理器 :AMD Athlon(速龙)II X2 255 双核内存:1791 MB主硬盘 :西数 WDC WD3200AAJS-22L7

3、A0 ( 318 GB / 7200 转/分)显 卡 :NVIDIA GeForce 6150SE nForce 430 ( 256 MB )显示器 :Topview(冠捷)LCDE980 FG981 ( 19.1 英寸)网 卡 :瑞昱 PCIe GBE Family Controller三、总体设计(设计原理、设计方案及流程等)(1)在一个默认的单文档应用程序Ex_SDI中通过映射计时器消息实现这样 的功能:无论在Ex_SDI应用程序窗口的客户区中单击鼠标左键或右键,都会弹 出消息对话框,显示鼠标左键或右键的单击次数。Ex_SDI运行结果如图所示:四、实验步骤(包括主要步骤、代码分析等)1

4、.创建工作文件夹打开计算机,在“E:Visual C+实验”文件夹中创建一个新的子文件夹“试验8”。2. 创建单文档应用程序Ex_SDI(1) 创建单文档应用程序Ex_SDI的具体步骤如下。(2) 启动 Visual C+6.0O(3) 选择“文件”一 “新建”菜单命令,显示出“新建”对话框。从列表中选 中MFC AppWizard(exe)的项目类型项。(4) 在“工程”编辑框中输入应用程序项目名称Ex_SDI,并将项目文件夹定位 到“ E:Visual C+实验、实验 8”。(5) 选中单文档(Single Document,按简称SDI)应用程序类型。单击“完成” 按钮,系统将显示向导创

5、建信息,单击“确定”按钮将自动创建此应用程序。(6) 编译运行。3. 添加数据成员(1) 添加数据成员的具体步骤如下。(2) 展开项目工作区窗口 ClassView中的所有类结点。(3) 用鼠标右键单击CEx_SDIView类结点,从淡出的快捷菜单中选择“Add Member Variable (添加成员变量)”,弹出如图所示的“Add Member Variable”对话框。(4) 在Variarble Typ框中输入成员变量类型int,在Variable Name框中输 入成员变量名m_nLButton。保留默认的访问方式(Access)为public。单击“OK” 按钮,这样,就会在CE

6、x_SDIView中添加一个公有型成员变量m_nLButton,变 量类型为int。(5) 在项目工作区窗口 ClassView中,展开CEx_SDIView类结点的多有成员结 点,双击构造函数CEx_SDIView()结点,在CEx_View类的构造函数中添加下列 成员变量初始化代码:CEx_SDIView:CEx_SDIView()(m_nLButton=m_nRButton=0;4. 添加消息映射(1) 按Ctrl+W快捷键打开“MFC ClaaWizad”对话框。(2) 在Class name组合框中,将类名选定为CEx_SDIView。此时,Object IDs 和Message列表

7、内容会相应地改变。在Object IDs列表框中选定CEx_SDIView, 而在Message列表中选定WM_LBUTTONMDOWN消息。(3) 双击 Message 列表中的 WM_LBUTTONMDOWN 消息活单击 “Add Function” 按 钮,都会在CEx_SDIview类中添加该消息的映射函数OnLBottonDown,同时在 Member function列表中显示这一消息映射函数和被映射的消息。映射 WM_LBUTTOMDOWN消息的结果如图所示。(4) 单击“Edit Code”按钮后,ClassWizard对话框退出,并转向文档窗口, 定位到OnLButtonDo

8、wn函数源代码处,添加下列代码:void CEx_SDIView:OnLButtonDown(UINT nFlags, CPoint point)计数变量m_nLButton加1,然后启动计时器m_nLButton+;SetTimer(1,50,NULL);CView:OnLButtonDown(nFlags, point);(5) 按相同的方法为CEx_SDIView类添加WMRBUTTOMDOWN消息映射,并在 映射函数中添加下列代码:计数变量m_nRButton加1,然后启动计时器m_nRButton+;SetTimer(2,50,NULL);CView:OnRButtonDown(nF

9、lags, point);(6) 按类似的方法为CEx_SDIView类添加WMTIMER消息映射,并在映射函 数中添加下列代码:void CEx_SDIView:OnTimer(UINT nIDEvent)(CString str;/创建一个字符串类对象通过判断nIDEvent的值来确定是单击鼠标左键还是右键if(nIDEvent=1)str.Format(你已单击鼠标左键%d 次!,m_nLButton);if(nIDEvent=2)str.Format(你已单击鼠标右键d 次!,m_nLButton);if(nIDEvent=1)|(nIDEvent=2)(KillTimer(nIDEv

10、ent); /先要关闭计时器MessageBox(str,报告);CView:OnTimer(nIDEvent);(7) 编译运行并测试,结果如下:5 .设置断点在设置断点之前,首先要保证程序中没有语法错误。所谓断点,实际上是告 诉调试器在何处暂时中断程序的运行,以便查看程序的状态以及浏览和修改变量 的值等。(1) 在项目工作区的Class View页面中,展开CEx_SDIView下的所有结点。(2) 双击OnLButtonDown结点,会在文档窗口中打开并定位到该信息映射代码 处,在代码行“m_nLButtonDown+; ”中单击鼠标。(3) 用下列3种方式之一设置断点,会在代码行“m_

11、nLButton+;”的最前面的 窗口页边距上有一个深红色的实心圆块,如图所示:1、按快捷键F9。2、在Build工具栏上单击按钮;3、在需要设置(或清除)短点的位置上单击鼠标右键,在弹出的快捷键菜 单中选择“ Insert/Remove Breakpoint ”命令。6 .控制程序运行(1) 选择“编译”菜单一一“开始调试”子菜单的“GO”命令,或单击“编译 微型条”中的“GO”按钮,启动调试器。(2) 程序运行后,在客户单击鼠标左键,由于程序中该消息的映射函数种设置 了断点,因此程序会在该断点处停顿下来。(3) 这时可以看到一个黄色小箭头,它指向即将执行的代码。而且原来的“编 译”菜单也会

12、变成“Debug”菜单。其中有四条命令Step into、Step Over、Step out和Run to Cursor是用于控制程序运行的。(4) 选择“Debug”菜单中的“Stop Debugging”命令或直接按快捷键shift+F5 或单击“编译微型条”中的“停止”按钮,启动调试器。7 .查看和修改变量的值(1) 启动调试器,程序运行后单击鼠标左键,程序停顿下来。(2) 在“调试”工具栏上,按快捷键F10,箭头指向下一句代码 SetTime” (1,50,NULL); ”。同时,Variables 窗口中的 m_nLButton 值变成了 1。(3) 在Watch窗口中,单击左边“

13、名称”域下的空框,输入m_nRButton,按Enter 键,相应的值会自动出现在“值”域中。同时,又在末尾处出现新的空框。添加 新的变量或表达式。(4) 选择“调试”菜单一“ QuickWatch”命令或按快捷键Shift+F9,将弹出 “QuickWatch”窗口。其中,“表达式”框可以输入变量名或表达式,然后按Enter键,就可以在“当前值”列表中显示出相应的值,再列表项的“Value”域中双 击该值,再输入新值按Enter键就可以其值的大小。单击添加监视按钮可将刚才 输入的变量名或表达式及其值显示在Watch窗口中。(6) 单击“关闭”按钮,关闭QuickWatch窗口。(7) 单击“调试”工具栏中的“Stop Debugging按钮,终止调试。7.保存文件,关闭并退出Visual C+ 6.0。五、结果分析与总结(1) 在Virtual C+6.0 (VS98)中,我看到了强大的MFC消息映射机制,这 种机制使得消息的处理变得简单,快捷,直观。这使我想到了,如果使用 Virtual Studio 2010等更新的开发环境,会不会更加的方便,直观,快捷 呢?(2) 在设置m_nLButton和m_nRButton消息映射时,由于代码相似度很高, 所以,为了保证不出错,应该仔细检查,以免把这两段代码混淆。教师签名:年 月 日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号