- 1、本文档共43页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第九章Windows编程基础
第9章 Windows编程基础; Windows 程序设计的基本概念Windows的事件驱动机制
Windows应用程序中常见的消息
Windows 程序设计的基本框架;9.1 Windows 程序设计基本概念;本章要点;2. Windows程序设计基本概念
(1)窗口
窗口是应用程序与用户之间交互的接口环境。用户可以通过窗口输入数据,控制应用程序的运行;应用程序可以通过窗口显示数据和状态。
(2)对象与句柄
对象是指Windows的规范部件,包括各种窗口、菜单、按钮、对话框以及程序模块等。
所谓句柄,就是一个唯一的整数值,是一个4字节长的数值,用以标识许多不同的对象类型,如窗口、菜单、内存、画笔、画刷和文件等。
由于Windows是一个多任务操作系统,它可以同时运行多个程序或一个程序的多个副本。Windows不仅使用句柄来管理实例,也用它来管理窗口、位图、字体、元文件和图标等系统资源。
常见的Windows对象句柄如表9-1所示,所有的句柄类型以H开头。;;(3)事件驱动
Windows应用程序以消息为基础,以事件驱动之。Windows应用程序启动之后将进入一个消息循环,等待系统或应用程序的消息,消息的产生是因为事件发生的结果,Windows程序设计主要围绕编写事件或消息的响应函数上。;(4)消息(Message)及其在Windows编程中的应用;Windows应用程序是由消息驱动的。Windows系统下每一个应用程序窗口都维护一个消息队列,操作系统接收和管理所有输入消息、系统消息,并把它们发送给相应窗口的消息队列。应用程序初始化完成后,进入消息循环,维护自己的消息队列,从中取出消息,并进行处理。
编写消息处理函数是Windows编程的主要工作之一。
系统传递给应用程序的消息数据是一个MSG结构体数据类型的数据。;消息的功能;消息的组成;在winuser.h中,消息结构体MSG的定义如下:
typedef struct tagMSG???? // 消息
{?
HWND hwnd; //目标窗口句柄
UINT message; //消息标识
WPARAM wParam; //消息参数1
LPARAM lParam; //消息参数2
DWORD time; //消息发送时间
POINT pt; //消息发送时鼠标的屏幕坐标
} MSG;
消息标识 message 是利用#define 宏定义好的消息名标识,是用于区别其他消息的常量值,每个Windows消息都有一个信息值,该值由windows.h头文件中的宏定义来标识。; Windows程序和Windows消息处理的基本流程 ;Windows消息分类;
在Win32中,消息统一由一个MSG结构来描述,每一条消息在消息队列中放置一个MSG结构变量。一般情况下,应用程序只需对结构中的消息类别message、附加参数wParam和lParam三个字段进行判断就可以区别一个消息。
;系统保留消息标识符的值在0x0000在0x03ff(WM_USER-1)范围。这些值被系统定义消息使用。应用程序不能使用这些值给自己的消息。
应用程序消息从WM_USER(0X0400)到0X7FFF,或0XC000到0XFFFF;WM_USER到0X7FFF范围的消息由应用程序自己使用;0XC000到0XFFFF范围的消息用来和其他应用程序通信.
WM_NULL---0x0000 空消息。0x0001----0x0087 主要是窗口消息。0x00A0----0x00A9 非客户区消息 0x0100----0x0108 键盘消息0x0111----0x0126 菜单消息0x0132----0x0138 颜色控制消息0x0200----0x020A 鼠标消息0x0211----0x0213 菜单循环消息0x0220----0x0230 多文档消息0x03E0----0x03E8 DDE消息0x0400 WM_USER0x8000 WM_APP0x0400----0x7FFF 应用程序自定义私有消息 ;消息的传递;9.2 Windows 中的事件驱动; Windows中事件产生的消息由系统传递给应用程序,应用程序必须有一个消息循环接收消息和处理相应的消息。消息循环的实现如下:
MSG msg???????????????????????? //定义一个MSG类型的变量
while
您可能关注的文档
- 第一章化工生产概述.ppt
- 第9讲宋辽金元史学:史学的繁荣与新儒学运动的影响上.ppt
- ch1计算机system概论.ppt
- 第一章入侵检测技术1.ppt
- 第一章信号与噪声.ppt
- 第一章linux操作系统简介与安装.ppt
- 第一章何去何从-发展道路的选择01.ppt
- 第一章双变量回归分析.ppt
- ch1综合布线system2.ppt
- 第一章信息安全概述20110904.ppt
- 小学科学:ESP8266智能插座电路原理与动手实践研究教学研究课题报告.docx
- 《金融开放浪潮下我国多层次监管体系构建与创新研究》教学研究课题报告.docx
- 区域教育质量监测中人工智能应用的数据质量分析与优化策略教学研究课题报告.docx
- 《金融科技监管中的数据治理与合规性要求》教学研究课题报告.docx
- 《3D打印技术在航空航天领域中的多材料制造与复合材料应用》教学研究课题报告.docx
- 《绿色金融发展中的政府职能与市场机制研究》教学研究课题报告.docx
- 《植物工厂多层立体栽培光环境调控技术对植物生长发育节律的调控机制探讨》教学研究课题报告.docx
- 销售团队年度业绩总结.docx
- 银行风险管理与金融危机防范.docx
- 银行网络攻击预警与快速响应机制.docx
最近下载
- 建设项目环境影响评价现状评价报告-中化云龙有限公司.PDF VIP
- 智能家居门窗控制系统设计.doc VIP
- cpl随钻测井介绍资料.ppt VIP
- 关于医药行业上市公司财务分析--以恒瑞医药为例.docx VIP
- 乡村非遗文化传承与乡村振兴战略中的文化传承与产业融合报告.docx VIP
- 小学生课前准备课件.pptx VIP
- 大隐静脉曲张患者的术后护理研究进展.docx VIP
- cpl随钻测井介绍.pptx VIP
- 乡村非遗文化传承与乡村振兴战略中的文化传承与乡村振兴报告.docx VIP
- 2025年山东烟台莱阳市结合事业单位招聘征集本科及以上学历毕业生入伍笔试备考题库及答案详解一套.docx VIP
文档评论(0)