- 1、本文档共41页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MFC基础入门.doc
Cobject类为那些集成的类提供3个重要特性
1串行化支持,对象永久数据存储和重新创建
2运行时类信息支持,允许运行时检索对象的类名称及其他信息
3诊断和调试支持,允许实例执行有效性检查,并将状态信息转到一个调试窗口
在MFC中对消息的处理利用了消息映射方法,该方法是利用宏定义实现的,用过宏定义将消息分派到不同的成员函数中进行处理
CWinapp类主要用于处理消息,它同一管理程序收到的所有消息,然后把消息分配到相应的对象中。
类中InitInstance函数在Windows环境下可以运行用一个程序的多个实例,函数InitInstance的作用就是在生成一个新的实例时,完成一些初始化工作
InitInstance的具体工作:定义文档模板的对象指针pDocTemplate,生成该文档的模板对象。
使用AddDocTemple函数把这个文档模板对象加载到应用程序所维护的文档模板链表中
文档模板pDocTemplate的作用就是把程序用到的框架窗口,如CMainFrame、文档CMyDoc、视窗CMyView与应用程序对象CWinApp联系起来
CCmdTarget类可以接受并处理由应用程序的菜单或者工具栏发出的命令消息
CWnd类派生于CCmdTarget负责创建和维护窗口,其他空间窗口的MFC类都由该类派生
CDC类派生出的类:
CClientDC:作用在窗口的客户区,构造的时候调用GetDC()析构的时候调用ReleaseDC()
CWindowDC:作用在窗口的客户区和非客户区
CPaintDC:用于绘制无效的窗口客户区,只能用于响应WM_PAINT消息。构造的时候执行BeginPaint()析构的时候执行EndPaint()
CMetaFileDC:用于创建元文件?
CMemFile:允许在内存而不是在磁盘上穿件文件
CArchive:在序列化的过程中使用CFile类将文档的类对象存入磁盘,或读取
序列化:是类中的成员变量和整个类对象按照某个顺序存盘
CArray:用于支持数据对象数组,CArray类的大小可以动态的增大或者减小
CList:用于支持数据对象的链表
CMap:用于支持数据对象的字典。使用一个CMap对象类将窗口句柄与其对应的CWnd对象关联
DispatchMessage函数把消息分发到相关的窗口过程去处理
在窗口过程中分析消息的类型及其参数的含义,然后进行不同的处理。相对比较麻烦。而MFC把消息调用的过程封装起来,使用户通过ClassWizard方便的使用和处理各种消息
操作系统所能够完成的每一个特殊功能通常有一个函数与其对应,也就是说,操作系统把它能够完成的功能以函数的形式提供给应用程序使用,应用程序对这些函数的调用就叫做系统调用。这些函数的集合就是windows提供给应用程序编程的接口,简称Windows API
Afx框架函数ApplicationFramework
实现都是调用API函数的,你可以在VC中找到任意一个框架函数比如AfxMessageBox,单击右键选转到定义就可以看到它的源码了,它的函数体里面还是要调用MessageBox的。Wparam、lparam都是整型。是关于消息的附加信息
每一个应用程序,操作系统都会给它建立一个消息队列
Dos下main函数可以接收两个参数
argc:接收命令行参数的个数
argv指针数组,存放命令行参数
窗口的创建步骤
1设计窗口类
2注册窗口类
3创建窗口类
4显示及更新窗口
style:窗口类类型,用一个字节中的每一位表示一种属性。
2:接收函数指针,窗口过程函数,也称回调函数
3:附加内存。类的所有实例公有
4:与winmain中的实例号相同
HBRUSH:画刷,画窗口的背景
LPCTSTR:长指针常量字符串 菜单名字、窗口类的名字
创建窗口函数
LpClassName:设计窗口类时,窗口类的名字(受上面的LpszClassName限制)
LPWindowName:窗口标题栏的名字
DWStyle:窗口类型
HWND:父窗口句柄
1:消息结构体指针
2:指定取出哪个窗口的消息,NULL时表示所有窗口
3:指定消息的最小值
4:指定消息的最大值
CALLBACK 函数调用的一种约定。有标准调用和C语音调用,两种调用的区别是参数传递顺序和堆栈堆栈清除。默认为cdecl
LRESULT:长整形,返回结果码
窗口过程函数参数由消息结构体前4个参数传入
Hdc:dc的句柄,利用dc和显示设备驱动程序打交道
WM_PAINT:窗口重绘时的消息
Beginpaint和endpaint函数只能用于窗口重绘
调用Destr函数将销毁窗口,并发送WM_destroy消息
Post函数发送WM_quit消息结束进程
MFC的winmain函数是在编译链接时,由链
您可能关注的文档
- Matlab__a安装教程及下载地址.doc
- MATLAB与C语言的异同.doc
- MATLAB与VB混合编程方式简易教程.doc
- Matlab与VB集成的四种方法.doc
- MATLAB仿真技术与应用实验参考资料.doc
- MATLAB作业参考答案.doc
- MATLAB命令与语法.doc
- MATLAB命令很全.doc
- MATLAB命令窗口CommandsmFULU.doc
- MATLAB命令索引.doc
- 新视野二版听说1第6单元示范1课件.ppt
- 【参考答案】 联络口译(第二版) 《联络口译》(第二版)参考答案.pdf
- 梅大高速茶阳路段“5·1”塌方灾害调查评估报告.docx
- 虹吸雨水PE管施工节点标准做法.pdf
- 2025消防设施施工质量常见通病防治手册,典型图示+规范要求.pptx
- 新视野大学英语(第二版)读写教程 4 空军工程大学编U05B.ppt
- E英语教程2(智慧版)Unit 6.pptx
- E英语教程3(智慧版)Unit 7.ppt
- 新视野二版读写1第4单元课件Section A How to Make a Good Impression.pptx
- E英语视听说教程4(智慧版)4-U2课件(2024版)U2.pptx
最近下载
- 广州市2023-2024学年高一年级下学期八区期末联考考试英语试题(含答案).doc
- 江西省事业单位考试:2012上半年江西省事业单位考试真题及答案解析(管理岗).docx
- 使用CODE V增强版ENVPIK进行无热化镜头设计.pdf
- 以竹代塑的挑战与对策.docx VIP
- 以竹代塑的未来展望.docx VIP
- 带头严守政治纪律和政治规矩,维护党的团结统一等四个方面存在的问题与整改材料精选(参考范文六篇).DOCX VIP
- 以竹代塑行业发展前景展望.docx VIP
- 保险转介绍培训资料.ppt
- 村BA篮球赛招商方案PPT模板.pptx
- 四川省绵阳市2024-2025学年高三上学期第二次诊断考试地理试卷含答案.pdf
文档评论(0)