欢迎来到天天文库
浏览记录
ID:41717455
大小:206.17 KB
页数:12页
时间:2019-08-30
《实习指导书(2)-基于MFC的对话框的程序设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、第二部分基于MFC的对话框程序设计1概述1.1MFC简介MFC是一个类库,类库是一个可以在应用程序中使用的相互关联的C++类的集合。MFC作为一个Windows编程类库,它包含了200多个类,封装了Windows的人部分编程对象以及与它们有关的操作。虽然程序在功能上千差万别,但从本质上看,都可以分为用户界面设计、文件操作、数据库访问及多媒体使用等儿部分,这些都可以通过一些类來实现。MFC提供了一个标准化的程序结构,使开发人员不必从头设计一个Windows应用程序。MFC主要组成部分包括类、宏和全局函数。类是MFC中最主要的内容。MFC类是以层
2、次结构方式组织起来的。MFC中的类分成两部分,除了一些辅助类,大多数的MFC类是总接或间接从根类CObject派生而來。儿乎每一个派牛层次都与一具体的Windows实例相对应,如文档类、窗口类和视图类等。下图是一个多文档MFC程序屮各种对象的逻辑关系:通过CDocMan锣r管理q创建应用程序对象文档模板对象文档对象在Irutlnstanc沖创建通过GetDocTemplate访问过GetFirstyiewPosition创題创建^-^GetNextViewij问通过GetDocuinent访冋通过GetActiveyie评亦P柜架窗口对象通过
3、CieateView创連视图对象通过CWnd:GetParentFrame访问通过GetActiveDocument访问MFC宏主要功能包括消息映射、运行时对彖类型服务、诊断服务、杲常处理等。例如,MFC采用消息映射(MessageMap)机制取代C/C++语言中的switch-case结构来处理消息。MFC消息映射机制包括一组消息映射宏。一条消息映射宏把一个Windows消息和其消息处理函数联结起来。在类的实现源文件屮用BEGIN_MESSAGE_MAP()和END_MESSAGE_MAP()宏来定义消息映射。在类定义的结尾用DECLARE
4、_MESSAGE_MAP()宏来声明使用消息映射。一个基本消息映射结构如卜•所示:BEGIN_MESSAGE_MAP(theclass,baseclass)//{{AFX_MSG_MAP(theclass)ON_//MFC预定义的消息映射宏ON_MESSAGE(message,memberFxn)//用户自定义的消息映射宏//})AFX_MSG_MAPEND_MESSAGE_MAP()注就::涯舔讲帝7/{〒AFXlMSQ[MAP"^「€ldssWiiard:类向导甬王维快消恵映'射宏的标记「•用•户不要删除注解轻易修改注解内的代码•••••
5、•••••••••••••••••••••••••••••••••••••••••••••••••••••••用尸如「果需要了解备企宏是如何实现的工:可在集成环境中打开柑应的「MFC「代】码进行观察J:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::MFC约定:全局函数以“Afx”为前缀,全局变量以“afx”为前缀。例如,通过调用:AfxMessageBox(HSomeMessage");可直接在屏幕
6、上弹出消息对话框。唯郵•MFG的所冇功能都来源于:WinAPI:函数;•:•学好API-是菇磁:•否则很难•:深入学好NFC,•辿很綜用好MFC;:•甚至看环懂MPC「的代码;•MFC冲的人部】分成员函数都^:API:函数是已皿•眉疲了恋也处圧函薮吊的第「对炖的扛至者只差宀金参数二2木紅柄蔘鉱檢花虫丙沛fl亦MFC的类屮往•:必嬰将该爼柄参数谊次带次°•:•1-2实践内容用MFC开发一个计算器程序:•对话框类型的程序;•能够实现浮点数值的加减乘除运篦;界面由一个编辑框和若干按钮组成,编辑框负责表达按钮输入及计算的结果,按钮负责输入数字、加减乘
7、除以及等于等动作的输入;程序的核心功能由标准C++方式实现,并通过MFC框架代码调用其功能;MFCK疑亍羽C程序中的变量及函数要规范命名,并加以适当的注释。环境的框架;;务数情况下都是用它来处W®功能二对斤I冷爰谕孫绕;逐应该冠祐实现的幼能袖注MF©框架甬渎现;奇应适当「••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••设诽二用标准烘士实现功能代码二并暴霸岀适当的接们二供恥框來程序调】加工这修i故扁矗处建祁盅耍丞规乎务毎粮集的睡跖:核心决沁可晝接妙心;•••••••••••
8、•••••••••••••••••••••••••••••••••••••••••••••••••这枷算器:的练匀星然简軸胆需耍伺学们进行送当的设诜幷发二休现川框報
此文档下载收益归作者所有