《MFC基础知识概述》PPT课件.ppt

上传人:za****8 文档编号:12668928 上传时间:2020-05-13 格式:PPT 页数:46 大小:357.51KB
返回 下载 相关 举报
《MFC基础知识概述》PPT课件.ppt_第1页
第1页 / 共46页
《MFC基础知识概述》PPT课件.ppt_第2页
第2页 / 共46页
《MFC基础知识概述》PPT课件.ppt_第3页
第3页 / 共46页
点击查看更多>>
资源描述
2020/5/13,1,面向对象与可视化程序设计-VisualC+编程主讲教师:唐龙教授(计算机科学与技术系)黄维通博士(计算机与信息管理中心)清华大学2001年10月,2020/5/13,2,第十章MFC的基础知识,2020/5/13,3,内容提要,MFC概述MFC类的组织结构及主要的类MFC中全局函数与全局变量应用程序向导及其应用,2020/5/13,4,10.1.MFC概述,2020/5/13,5,1.VC+编程的实现方法,利用WindowsAPI函数编程,用户需要编写大量的代码,工作量大。利用MFC和向导(Wizard)实现可视化编程,其步骤如下:用ClassWizard生成应用程序的基本框架;用ClassWizard建立类、消息处理、数据处理函数或定义控件的属性、事件和方法:把各应用程序所要求的功能添加到类中。,2020/5/13,6,2.MFC及其特点,MFC是用来编写Windows应用程序的C+类集以层次结构组织封装了大部分API函数提供了图形环境下应用程序的框架提供了创建应用程序的组件提供大量的基类便于不同的应用环境进行扩充允许自定义和扩展应用程序中的类较好的移植性,可移植于众多的平台很好地保持了程序的向下兼容性,2020/5/13,7,3.版本升级与功能的增强,MFC1.0MFC库中所有具有消息映射属性的基类。消息映射规定了当一对象接收到消息命令时,应调用哪一个函数对该消息进行处理。,(2)窗口应用程序类:CWinApp类,每个应用程序有且仅有一个从CWinApp类中派生的对象。在运行程序中该对象与其它对象相互协调;CWinApp类封装了初始化、运行、终止应用程序的代码。,(1)命令相关类:CCmdTarget类,2020/5/13,17,(3)文档/视类,文档对象由文档模板对象创建,管理应用程序的数据;视对象表示一个窗口的客户区,显示文档数据并允许用户与之交互。,(4)线程基类:CWinThread类,所有线程的基类,可直接使用。CWinApp类就是从CWinThread类中派生出来的。,2020/5/13,18,4.可视对象类,窗口类CWnd类视类CView类菜单类CMenu类对话框类CDialog类控件类控件条类CControlBar类,2020/5/13,19,(1)窗口类CWnd类,Cwnd是CCmdTarget类的子类,提供了所有窗口类的基本功能;创建Windows窗口的两个步骤:引入构造函数,构造一个CWnd对象调用Create建立Windows窗口,并连到CWnd对象,(2)视类CView类,表示框架窗口的用户区和显示文档数据并接收输入的用户区;其主要派生类:CScrollView:具有滚动功能的视的基类CFormView:其布局在对话资源中定义的滚动视CEditView:具有文本编辑、查找、替换和滚动功能的视,2020/5/13,20,(3)菜单类CMenu类,CObject类的子类,用于管理菜单。一个WindowsHMenu的封装,提供了菜单资源建立、修改、跟踪及删除的成员函数。,(4)对话框类CDialog类,从CWnd类中派生出来的特殊的窗口类。包括通用对话框类CDialog以及支持文件选择、颜色选择、字体选择、打印、替换文本的公共标准对话框子类。,2020/5/13,21,(5)控件类,包括若干主要类:按钮静态文本滚动条编辑框.,为Windows应用程序提供了各种输入和显示界面。用于建立静态文本、命令按钮、位图按钮、列表框、组合框、滚动条、编辑框等。,2020/5/13,22,(6)控件条类CControlBar类,连接在主窗口框架的顶部或底部的小窗口;为工具条、状态条、对话条和分割窗口建立模型;包括如下的基类:CToolBar工具条;CStatusBar状态条;CDialogBar对话条。,2020/5/13,23,(7)绘画对象类CGdiObject类,图形绘画对象子层次结构以CGdiObject类为根类;可用于建立绘画对象模型,如画笔、刷子、字体、位图、调色板等。其子类有:Cbitmp:位图Cbrush:刷子Cfont:字体Cpalette:调色板CPen:画笔CRgn:域,2020/5/13,24,(8)设备描述表类CDC类,是CObject类的子类;其子类有:CpainDCCClientDCCWindowDCCMetaFileDC该类及其子类支持设备描述表对象;包括许多成员函数,如映射函数、绘画工具函数、区域函数等,可以完成所有的绘画工作。,2020/5/13,25,5.通用类,此类提供了许多通用服务,例如:文件I/O诊断和异常处理如数组和列表等存放数据集的类。,2020/5/13,26,(1)文件类,用以编写输入输出处理函数。主要文件类有:CFile类:访问二进制磁盘文件CMemFile类:访问住内存文件CStdioFile类:访问(文本)磁盘文件CArchive类:与Cfile对象一起通过串行化实现对象的永久存储。,2020/5/13,27,(2)异常类CException类,CException是所有异常情况的基类。不能直接建立CException对象,只能建立派生类的对象,用派生类来捕获指定的异常情况Cexception的派生类有:CArchiveException类:归档异常CFileException类:文件异常CMemoryException类:内存(不够)异常CNotSupportedException类:用未支持特征异常CResourceException类:装载资源(失败)异常CUseException类:用于停止用户起动的操作异常,2020/5/13,28,(3)模板收集类,可将多种对象存放到数组、列表和“映射”中。但这些收集类是模板,它们的参数确定了存放在集合中的对象类型。主要的模板收集类有:CArry类:元素存入数组CMap类:键映射到值CList类:元素存入链表CTypedPtrList类:将对象指针存入链表的类型CTypedPtrArray类:将对象指针存入数组的类型CTypedPtrMap类:将键指针映射到值指针的类型,2020/5/13,29,6.OLE类,对象连接与嵌入类包括3组,共9个类。普通类COleDocuemntCOleItemCOleException客户类COleClientDocCOleClientItem服务器类COleServerCOleTemplateCOleServerDocCOleServerItem,2020/5/13,30,开放数据库连接层提供了一些类来支持ODBC特征,即通过这些类可开发数据库应用程序来访问多个数据库文件。主要包括的类:CDataBase类:对一个数据源的连接Crecordset类:选一组记录CRecordView类:直接连接一记录集的格式视CFieldExchange类:支持记录字段交换CLongBinary类:封装一存储句柄CDBException类:数据存取处理(失败)异常,7.ODBC数据库类,2020/5/13,31,10.3.MFC中全局函数与全局变量,2020/5/13,32,以Afx开头的函数除数据库类函数和DDX(DialogDataExchange)函数外,都是全局函数。以Afx为前缀的变量,都是全局变量。,MFC中全局函数和全局变量,2020/5/13,33,全局函数,2020/5/13,34,10.4应用程序向导及其应用,2020/5/13,35,应用程序向导提供了一个基于MFC的应用程序框架;程序员可在此框架基础上添加实现特定功能的代码。,向导及其应用,2020/5/13,36,MFC应用程序向导,File-New-MFCAppWizard,Projectname,2020/5/13,37,MFCAppWizardStep1对话框,所使用的语言文字,建立的应用程序的类型,2020/5/13,38,MFCAppWizardStep2对话框,选择数据库的支持,2020/5/13,39,MFCAppWizardStep3对话框,选择复合文件支持,2020/5/13,40,MFCAppWizardStep4对话框,选择应用程序界面外观,2020/5/13,41,MFCAppWizardStep5对话框,选择应用程序风格,选择库的链接方式,选择应用程序注释,2020/5/13,42,MFCAppWizardStep6对话框,设置所生成的文件名和类名,2020/5/13,43,NewProjectInformation对话框,2020/5/13,44,MFCAppWizard自动生成应用程序框架,2020/5/13,45,(第十章)完,2020/5/13,46,综合练习作业(一),综合运用已学过vc+编程知识,设计实现科学计算小计算器,其功能类似于Windows系统附件中的计算器。应有最基本功能:四则运算;三角函数;常用函数;数制转换;注12月10日前完成,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!