欢迎来到天天文库
浏览记录
ID:43185866
大小:651.50 KB
页数:99页
时间:2019-10-01
《C ++面向对象程序设计 第七章 Visual C 编程基础》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、主讲教师:***个人主页:***高级语言程序设计II四川大学计算机学院四川大学计算机学院2021/9/201主讲教师:四川大学计算机学院***教材:《C++面向对象程序设计》李涛主编游洪跃陈良银李琳等编高等教育出版社2006年2月出版2021/9/202主讲教师:四川大学计算机学院***本书内容第1章绪论第2章C++类和对象第3章继承第4章多态性第5章模板第6章C++常见问题第7章VisualC++编程基础第8章对话框、常用消息、菜单和工具条第9章单文档界面和多文档界面第10章图形设备接口实验(待安排)2021/9/203主讲教师:四川大学计算机学院***提纲MFC编程第七章Vis
2、ualC++编程基础ARMVectorTableFIQIRQ(Reserved)DataAbortPrefetchAbortSoftwareInterruptUndefinedInstructionReset0x1C0x180x140x100x0C0x080x040x00132WindowsAPI编程Windows程序运行机制2021/9/204主讲教师:四川大学计算机学院***7.1Windows程序运行机制Windows中的事件驱动与消息循环Windows是一种典型的事件驱动运行机制;DOS应用程序显式地运用一个函数(比如gets)来取得输入;2021/9/205主讲教师:四川
3、大学计算机学院***Windows应用程序是等待Windows系统将输入传递给Windows应用程序的窗口,当窗口有输入时,窗口过程函数处理输入后将控制返回给Windows系统;Windows系统以消息的形式将输入传给窗口过程;2021/9/206主讲教师:四川大学计算机学院***7.1Windows程序运行机制例7.1分析通过鼠标在Windows的画图程序窗口中画一个矩形的消息传递和消息处理过程;Windows应用程序在运行时就是不断地等待消息,处理消息,又等待消息这个过程循环往复直到程序运行结束时为止,一般称这个过程为消息循环。2021/9/207主讲教师:四川大学计算机学院*
4、**7.1Windows程序运行机制消息和消息处理:消息的结构MSG:typedefstructtagMSG{HWNDhwnd;UINTmessage;WPARAMwParam;LPARAMlParam;DWORDtime;POINTpt;}MSG,*PMSG;2021/9/208主讲教师:四川大学计算机学院***7.1Windows程序运行机制MSG数据成员含义:1、hwnd:消息要发送到的应用程序窗口的句柄,如果是在一个有多个窗口的应用程序中用此数据成员可决定让哪个窗口接收消息;2、message:是一个数值用于惟一标识一种消息类型;2021/9/209主讲教师:四川大学计算机
5、学院***3、wParam:是一个32位的消息数据成员它的确切意义取决于消息本身;4、lParam:也是一个32位的消息数据成员它的确切意义也取决于消息本身;2021/9/2010主讲教师:四川大学计算机学院***5、time:消息放入消息队列中的时间,在这个数据成员中写入的并不是日期而是从Windows启动后所测量的时间值用于保持消息正确的顺序;6、pt:消息被放入消息队列时的鼠标坐标;2021/9/2011主讲教师:四川大学计算机学院***7.1Windows程序运行机制被送往应用程序的消息将被应用程序窗口的窗口过程函数所接收,如程序员编写有相应的函数窗口过程函数将执行对应的函
6、数;一个消息函数只对应一个消息,每个消息都有一个专门的函数来处理;回顾例7.1;2021/9/2012主讲教师:四川大学计算机学院***7.1Windows程序运行机制消息映象机制:消息映像指MFC类中将消息与消息处理函数联系起来形成一一对应的机制;任何一个从类CCmdTarget派生的类都能处理消息都有相应的消息映像;2021/9/2013主讲教师:四川大学计算机学院***7.1Windows程序运行机制VC中源文件宏BEGIN_MESSAGE_MAP和END_MESSAGE_MAP之间的代码为消息映像代码如象下面程序片段:BEGIN_MESSAGE_MAP(Cstep,CVie
7、w)//{{AFX_MSG_MAP(CCircleView)ON_WM_LBUTTONDOWN()ON_WM_LBUTTONLOCK()ON_WM_LBUTTONUP()ON_WM_MOUSEMOVE()//}}AFX_MSG_MAPEND_MESSAGE_MAP()2021/9/2014主讲教师:四川大学计算机学院***利用ClassWizard消息处理函数中加入代码;2021/9/2015主讲教师:四川大学计算机学院***7.2WindowsAPI编程API和SD
此文档下载收益归作者所有