窗口、消息及调试实验报告

更新时间:2023-10-31 06:11:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验(实习)报告

实验(实习)名称 窗口、消息及调试 日期 5.15 得分 指导教师

院 计算机与软件学院 专业 计算机科学与技术 年级 2011 班次 姓名 学号

实验内容:

(1)在一个默认的单文档应用程序Ex_SDI中通过映射计时器实现这样的功能:无论在Ex_SDI应用程序窗口的客户区中单击鼠标左键或右键,都会弹出消息对话框,显示鼠标左键或右键的单击次数。

(2)使用调试器对上述程序的流程和鼠标次数进行调试。 实验步骤:

1. 添加数据成员

(1)展开项目分、工作区窗口ClassView页面中的所有类节点。

(2)右击CEx_SDIView类节点,弹出的快捷键菜单中选择“Add Member Variable”(添加成员变量)。

(3)在“变量类型”(Variable Type)框中输入成员变量类型int,在“变量名称”(Variable Name)框中输入变量名m_nLButton。保留默认的访问方式(Access)为Public。

(4)按相同的方法,在CEx_SDIView中添加一个公有型成员变量m_nButton,变量类型为int。

(5)在CEx_SDIview类的构造函数中添加下列变量初始化代码:m_nLButton=m_nRButton=0; 2.添加消息映射

(1)打开MFC ClassWizard对话框。

(2)类名选为CEx_SDIView,在Object IDs列表中选定CEx_SDIView,在Message列表中选定WM_LBUTTONDOWN消息。

(3)在CEx_SDIView类中添加该消息的映射函数OnLButtonDown, (4)单击Edit Code按钮后定位到OnLButtonDown函数添加下列代码:

m_nLButton++;

SetTimer(1,50,NULL);

(5) 在CEx_SDIView类添加WM_RBUTTONDOWN消息映射,添加下列代码:

M_nRButton++;

SetTimer(2,50,NULL);

(6) 在CEx_SDIView类添加WM_TIMER消息映射,添加下列代码:

CString str;

If(nIDEvent==1)

str.Format(“你以单击鼠标左键%d次!”,m_nLButton); If(nIDEvent==2)

str.Format(“你以单击鼠标右键%d次!”,m_nRButton); If((nIDEvent==1)||(nIDEvent==2))

{

KillTimer(nIDEvent); MessageBox(str,”报告”);

3. 编译运行并测试 4. 设置断点

5. 控制程序运行

Step Over 的功能是运行当前箭头指向的代码(只运行一条代码)。

Step Into 的功能是如果当前箭头所指向的代码是一个函数的调用则用Step Into进入该函数进行单步执行

Step Out 的功能是如果当前箭头所指向的代码是在一个函数内,用它使程序运行至函数返回处。

Run to Cursor 的功能是使程序运行至光标所指的代码处 6. 查看和修改变量的值

本文来源:https://www.bwwdw.com/article/dwh2.html

Top