ImageVerifierCode 换一换
格式:PPTX , 页数:23 ,大小:927.35KB ,
资源ID:14398745      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/14398745.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(对话框程序代码详解PPT文件格式下载.pptx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

对话框程序代码详解PPT文件格式下载.pptx

1、,5,对话框程序的文件组织,ReadMe.txt自动生成的说明文件 W1_2.clw类向导使用的文件 W1_2.dsp工程文件 W1_2.dsw项目文件(启动)W1_2.ncb支持ClassView的文件 W1_2.opt配置文件 W1_2.plg日志文件,这些都是自动生成的,与程序功能和编译无关,也不需要知道它们的内部结构,记住一个原则即可:原则2:只修改*.cpp 和*.h文件,其他一概不理。,6,文件与类,我们自己添加的函数、变量。,7,基于对话框的程序,其核心是由CWinApp和CDialog类中派生出来的两个类。对话框程序的编程,可以看作是对两个派生类的编程。其中,主要是以消息响应函

2、数的形式,在CDialog类的派生类中编写代码。,8,App.h文件,由框架生成的类的第一部分,重载基类虚函数,这里只重载了一个函数:InitInstance(),由框架生成的类的第二部分,类的实现,这部分是用来响应消息的。,9,App.cpp(1),这一部分,是用来实现消息映射、消息响应的。暂时先不用去明白其原理。以后会讲到。,有且仅有一个的程序对象。,10,App.cpp(2):InitInstance函数,声明一个Dialog类对象。m_pMainWnd是App的基类中的一个指针对象。,一些选项,不用理会,调用DoModal()方法,完成窗口的创建、显示。我们在后续课程中会学到该方法。这

3、里仅了解即可。,App类的构造函数和InitInstance()是框架中最先被调用的,起到类似于main()的作用。在初始化函数InitInstance中声明程序主窗口对象 CW2_3Dlg dlg;并且创建并显示这个窗口。App.cpp文件中声明了唯一的全局App类对象:CW2_3App theApp;,11,App类小结(1),App类中,通过下面的三大宏(先不必管什么意思),实现该类的消息映射和响应。实际上,MFC框架程序中所有框架类都有这三大宏。,12,App类小结(2),对话框程序的文件结构App类Dlg类MFC程序执行流程MFC中的消息响应过程控件的手工操作和使用,13,本课内容,

4、14,Dlg.h(1)对话框数据部分,重载自基函数,数据交换函数。,通过类向导添加的成员变量,对话框数据,15,Dlg.h(2)对话框实现部分,三大宏:消息映射,该类的所有消息响应函数,程序图标句柄,16,Dlg.cpp(1)构造函数,Dlg类的构造函数中自动初始化了我们添加的各个变量,最后调用全局函数LoadIcon,装载默认的程序图标,变量的初始化,著名的MFC的DDX机制:每当通过ClassWizard为控件添加一个变量时,就会自动添加该变量的一个DDX到该函数中。DDX实现控件资源ID与成员变量的“绑定”。每当调用updatedata()函数,就会调用DoDataExchange().

5、,17,Dlg.cpp(2)MFC控件的DDX,18,Dlg.cpp(3)再现三大宏,Dlg类中的所有消息响应函数都被放在这里。,这几个函数是MFC框架中默认为对话框程序添加的系统消息响应函数。程序Create一个对话框后,首先调用对话框的构造函数,接着就调用OnInitDialog函数。在程序位置改变、需要刷新页面时,调用OnPaint()其他先不必理会。,19,Dlg.cpp(4)其他函数,20,小结:App与Dlg结构共同点,预编译头文件 StdAfx.h资源描述文件*.rc 图标资源文件*.ico 资源头文件Resource.h,21,工程中的其他文件,定义了所有资源的ID,Dlg程序

6、中:App类中的InitInstance可以看作程序的main,实现程序启动和窗口创建。Dlg 类中的OnInitialDialog可以看作初始化函数,用来在程序运行开始前,对程序进行设置。但:“可以看作”“就是”MFC的Main函数叫做 AfxWinMain。它被作为MFC的全局函数,独立于MFC类库存在,用户无法修改(因此也没有必要学习)。在程序启动以后,首先调用AfxWinMain,然后找到唯一的App类对象,调用其InitInstance,启动程序。,22,问题:代码中没看到main?,int AFXAPI AfxWinMain()/.CWinApp*pApp=AfxGetApp();if(!pThread-InitInstance()/.error procnRCode=pThread-Run();/.,23,程序的执行流程&演示,MFC全局函数,获取当前程序中App类对象指针,通过多态,执行App类对象的InitInstance函数,Run函数实际上启动了消息循环。通过MFC消息响应宏,实现各个类中消息的响应。,在调试时,直接F10,就能看到详细过程。演示一下。,

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1