- 1、本文档共68页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VisualC面向对象编程vcpp04
Visual C++面向对象编程 管理学院16系 吴春旭 第4章 MFC原理与方法 4.1 Windows编程基础 4.2 微软基础类MFC 4.3 MFC应用程序框架 4.4 MFC消息管理 4.5 MFC宏 4.6 VC++扩充定义的数据类型 4.7 常用的MFC类 4.1 Windows编程基础 1、Windows编程特点 DOS应用程序的用户界面是基于字符方式的,内部采用顺序执行过程和中断机制。在执行流程上,采用过程驱动的方式,根据用户输入条件,按照事先安排好的顺序运行。 Windows是一个基于消息传递、事件驱动(message base, event driven)的操作系统,Windows应用程序以窗口的形式出现,内部采用消息处理机制。 在执行流程上,Windows应用程序采用事件驱动的方式,即程序不按照事先安排好的顺序运行,而是按照“事件→消息→处理”随机的方式运行。 4.1 Windows编程基础 当某个事件(Events)发生时,Windows会根据具体的事件,产生相应的消息(Message) ,并发送到指定应用程序的消息队列。应用程序从消息队列中取出消息,并根据不同的消息进行不同的处理,即调用对应的消息处理函数。 从程序执行的角度看,由于windows是一个多任务的操作系统,多个windows应用程序要共享系统资源。应用程序在使用资源前,必须向操作系统申请,由操作系统将资源分配给程序使用,程序使用结束后要释放资源,以便其他程序使用。 4.1 Windows编程基础 基于资源的程序设计: Windows应用程序常常包含众多图形元素,例如:光标、工具栏、菜单、对话框等。在Windows环境下,每一个这样的元素都作为一种可以装入应用程序的资源来存放。这些资源就像C++程序中的常量一样,可以被编辑、修改,也可以被其他应用程序所共享。 4.1 Windows编程基础 Windows应用程序由源代码和需要使用的资源组成,两部分分开设计。程序员可以利用资源编辑器设计资源,然后通过资源编译程序,将资源编译成应用程序所能读取的二进制数据结构,存放于应用程序的.exe或.dll程序库中。 资源与源代码的分离,使得可以在不修改源代码的情况下,直接修改资源。例如:将所有的字符串以资源的方式存储,要得到不同语言版的软件,只需从可执行文件中获取字符串资源,并进行翻译,而无需修改源代码。 4.1 Windows编程基础 2、应用程序编程接口API Windows API是大量函数加上数字常量、宏、结构体、类型以及其他相关项的集合。它是包含在windows操作系统中的。 标准Win32 API函数可以分为以下几类: 系统服务 通用控件库 图形设备接口 网络服务 用户接口 系统Shell Windows系统信息 4.1 Windows编程基础 应用程序可以通过调用底层的API函数来使用Windows系统提供的功能。 这些API函数定义在动态链接库中,从功能分:有User32.dll、Gdi32.dll和Kernel32.dll三个库。它们的API函数都在Windows.h头文件中进行了声明。 Kernel32.dll:Windows内核库,定义了实现操作系统核心低层功能的函数,包括文件、内存、进程和注册表等的管理。 User32.dll:Windows用户界面库,定义了窗口管理函数,包括窗口、菜单、工具栏和光标等的管理。 4.1 Windows编程基础 Gdi32.dll:Windows图形设备接口库,定义了图形设备GDI函数,实现与设备无关的图像绘制功能。 直接采用API进行的程序设计称为传统的Windows编程。 例4.1编写一个简单的“Hello World”程序。 (1)建一个“Win32 Application”空项目ex4_1; (2)在该项目中创建一个“C++ Source File”,“文件名”为ex4_1,该文件中加入下列程序;编译、联编、运行。运行结果见下图: 4.1 Windows编程基础 #include windows.h//修饰符,是一个宏,它替代的是_stdcall,表明按从左到右压参数入栈,由被调用者把参数弹出栈 int APIENTRY WinMain(HINSTANCE hInstance,//Windows为应用程序实例生成的句柄,本程序的唯一标识,其他函数需用此句柄作为参数来作用于本程序。程序每打开一次称为运行一个实例 HINSTANCE hPrevInstance,//是16位windows系统留下的,不再使用,只是为了兼容而保留 LPSTR lpCmdLine,//是一个字符串指针,指向命令行参数字符串,可以使用它得到命令行的参数 int nCmdShow)//系统传入的应用程序
您可能关注的文档
- net框架c#程序设计5--类型2.ppt
- nginx+tomcat集群+session复制.doc
- nordfx外汇开户指南.doc
- NO.1职业服务有限责任公司.ppt
- OK名著图读OK策划论.doc
- OCS2007安装.doc
- n五年级数学下册第四单元带分数例3.ppt
- ONT10第六章实现VOIPS02L03.ppt
- opt实验报告.doc
- oracle10g性能调整及优化.doc
- circuit cellaratmel avr设计大赛2006abstract entryat3329摘要条目.pdf
- 单元测试脚本财务核算组口岸业务流程tw v0.pdf
- 来源分布yeyvary等分散性count data计数据.pdf
- 高速陆地蜂窝结构进程号.pdf
- 信件选择淘金探.pdf
- 高二译牛模块选修同步辅导词汇结.pdf
- mtk平台写工具使用说明人工1 aenhelp writeimei.pdf
- 多脉冲转换器1lecture 2012 multipulse11th.pdf
- wy八级教学资源库16下unit 2.pdf
- 在社会反馈中考虑个人口味以改善饮食习惯paperw135.pdf
文档评论(0)