第2章 vc++ 应用程序框架和基本流程-PPT教材.ppt

第2章 vc++ 应用程序框架和基本流程-PPT教材.ppt

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
应用程序框架实际上是一个完整的程序模型,具备标准应用软件所需的一切基本功能,如文件存取、打印预览、数据交换,窗口排列,……,以及这些功能的使用接口(菜单、工具栏、状态栏、对话框等)。;2.1.1 应用程序基本结构 ; 在Windows程序中,接受并处理消息的主角肯定是窗口。因此,每一个窗口都应该有一个函数负责处理消息,我们称此函数为“窗口函数”。窗口函数WindowProc以switch/case的方式判断消息的类别,决定处理的方式。另外,对于一个窗口,还必须有创建窗口的函数CreateWindow和显示窗口的函数ShowWindow。 ; 此外,每个Windows程序实例有一些初始化工作需要完成。因此,就应该定义一个初始化函数:InitInstance。; 因此,在MFC类库中,应用程序类CWinApp封装了消息循环函数Run、程序初始化函数InitInstance和退出函数ExitInstance 。;2.1.2 使用向导生成应用程序框架 ; 从AppWizard Step1可见,MFC生成的应用程序的用户界面只有三种类型: 单文档型:主边框窗口+视图+[文档] 多文档型:主边框窗口+子边框窗口+视图+[文档] 对话框型:对话框+控件;2.2.1 创建全局对象;2.2.2 AfxWinMain函数; InitApplication函数一般没有实质性的内容,程序的初始化主要通过InitInstance函数完成。 ; 现在, 执行的脚步到达pThread -Run(), 即调用CWinThread的Run函数。 ;theApp //创建全局的应用程序对象;2.3 应用程序框架类及其 主要成员函数;2.3.1 应用程序类;CWinApp的主要数据成员: m_pszAppName:指定了应用程序名称 m_pMainWnd :指向主边框窗口的指针 m_lpCmdLine:指示一个以NULL结尾的字符串,指向应用程序的命令行 m_nCmdShow:指示最初如何显示窗口;2.3.2 边框窗口类和视图类;2. 子边框窗口类 对于多文档的窗口型应用程序,在主边框窗口内还有一个或多个子边框窗口,它由CChildFrame管理,是从CMDIChildWnd类派生。; 视图由视图类管理,有二种视图类: 无文档/视图结构支持的应用程序,视图类是直接从CWnd类派生 有文档/视图结构支持的应用程序,视图类是从CView或其派生类派生。; 边框窗口类和视图类在MFC体系中的层次如下图所示。;4.边框窗口类的主要成员函数 Create???LoadFrame 用于创建边框窗口 PreCreateWindow 用于定制边框窗口 ShowWindow、UpdateWindow、DestroyWindow 用于显示、更新、销毁边框窗口 GetActiveView、GetActiveDocument 用于获得当前活动的视图和文档 EnableDocking、DockControlBar 用于允许工具栏停靠和确定具体的停靠位置 MDITile、MDICascade 用于平铺、层叠所有子窗口 MDIGetActive 获得当前活动的子边框窗口 OnPaint 用于重绘屏幕;5.视图类的主要成员函数 视图类用于程序的输入和输出,其主要成员函数都来自窗口基类CWnd,输入方面主要是改写鼠标消息处理函数,输出方面主要是改写OnPaint函数,以实现屏幕的数据显示和屏幕重绘。;2.3.3 对话框类和控件类; 对话框型应用程序是Windows的一种常见程序类型,如计算器和Windows Media Player,本教材中的许多程序也是对话框型应用程序。对话框型应用程序的对话框类是直接从CDialog类派生的。; MFC控件类可分为三类,一类是在Windows 3.x中就已支持的普通控件类,另一类是Windows 95 /NT/2000中支持的通用控件类,这些控件类都以”Ctrl”结尾。第三类是后期加入的对普通控件类的补充,也是从普通控件类派生的,称为附加控件类,适合于某些特殊应用。;CObject;3.对话框类和控件类的主要成员函数 OnInitDialog 初始化对话框 DoModal 显示模态对话框 DoDataExchange 对话数据交换和数据验证 GetDlgItem 获得某控件的指针 GetDlgItemInt、 SetDlgItemInt 获取或设置某控件的整形值 GetDlgItemText、 SetDlgItemText 获取或设置某控件的文本 DlgDirSel

您可能关注的文档

文档评论(0)

139****0573 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档