第06章 Widows编程基础.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第06章 Widows编程基础

第6章 Windows编程基础 第6章 Windows编程基础 6.1 Windows程序的特点 Windows程序的主要特点: 1.用户界面统一、友好 2.独立于设备的图形操作 使用图形设备接口(GDI)屏蔽了不同设备的差异,提供了设备无关的图形输出能力 3.支持多任务 允许用户同时运行多个应用程序(窗口) 4.队列化消息输入 把从键盘、鼠标、定时器等输入设备接收的输入信息放入应用程序的队列中;Windows操作系统管理队列;应用程序需要输入信息时,不读硬件端口,只读消息队列。 5.支持队列特征的消息驱动模型 Windows程序的特点 6.事件驱动的程序设计 Windows程序由事件的发展控制,允许程序的用户用各种合理的顺序来安排程序的流程。 7.资源共享 各个应用程序共享系统提供的资源,包括设备上下文、画刷、画笔、字体、对话框、图标、定时器、通信端口等 8.程序和资源分开 菜单、对话框、位图等可视对象被单独分离出来加以定义,全部资源定义都放在资源文件中(通常以.rc为后缀名)。 9.支持应用程序间的数据交换 6.2 基本概念 6.2.1 事件及事件驱动 Windows系统也叫事件驱动的系统。当用户按下一个键、移动鼠标或单击鼠标按钮时,计算机通知Windows系统已经发生了一个事件,以及事件的种类、发生的时间、发生的位置 (如坐标值)。 事件通常以下列三种方式产生: 通过输入设备,如键盘和鼠标; 通过屏幕上可视的对象,如菜单、工具栏按钮、滚动条和对话框上的控件; 来自Windows内部,如当一个后面的窗口显示到前面时。 基于事件驱动的程序模型 6.2.2 消息 当Windows捕获一条事件后,它会编写一条消息,将相关信息放入一个数据结构MSG中,然后将包含此数据结构的消息发给需要消息的程序。 消息处理是Windows应用程序的核心。 消息是操作系统通知应用程序某件事情已经发生的一种方式。 Windows消息是在Windows.h文件中用宏定义的常数。 消息常数名常以WM_开头,格式为WM_XX。 消息 1.消息来源 Windows应用程序的消息来源于以下四种: (1) 输入消息:键盘和鼠标的输入。此类消息先放在系统消息队列中,然后由Windows将它们送入应用程序消息队列中,由应用程序来处理消息。 (2) 控制消息:与Windows 的控制对象,如列表框、按钮、复选框等进行双向通信。这类消息一般不经过应用程序消息队列,而是直接发送到控制对象。 (3) 系统消息:对程序化的事件或系统时钟中断作出反应。 (4) 用户消息:程序员自己定义并在应用程序中主动发生的,一般由应用程序的某一部分内部处理。 VC++中存在几种系统定义的消息分类,不同的前缀符号经常用于识别不同的消息类,系统定义的消息宏前缀如下: l?? BM:按钮控制消息; l?? CB:组合框控制消息; l? DM:默认下压式按钮控制消息; l? EM:编辑控制消息; l?? LB:列表框控制消息; l? SBM:滚动条控制消息; l?? WM:窗口控制消息。 消息 2.消息的数据结构 消息 3.消息队列 消息 4. Windows程序常用消息 (1)标准Windows消息( 前缀为WM_ ) 分为三类:鼠标消息、键盘消息和窗口消息 (2)控件消息 控件或其他子窗口向父窗口发送WM_COMMAND消息 (3)命令消息 菜单项、工具栏按钮、加速键等用户界面对象发送的WM_COMMAND消息。 焦点消息: WM_SETFOCUS,WM_KILLFOCUS 定时器消息:WM_TIMER 消息 4. Windows程序常用消息 (1)标准Windows消息--鼠标消息 WM_LBUTTONDOWN:单击鼠标左键时产生的消息; WM_LBUTTONUP:放开鼠标左键时产生的消息; WM_RBUTTONDOWN:单击鼠标右键时产生的消息; WM_RBUTTONUP:放开鼠标右键时产生的消息; WM_LBUTTONDBLCLK:双击鼠标左键时产生的消息; WM_RBUTTONDBLCLK:双击鼠标右键时产生的消息; WM_MOUSEMOVE:鼠标在窗口中移动时产生的消息; 消息 4. Windows程序常用消息 (1)标准Windows消息--键盘消息 WM_KEYDOWN:按下一个非系统键时产生的消息,附加信息参数wParam为按下键的虚拟键码,虚拟键码用以标识按下或释放的键,lParam记录按键的重复次数、扫描码等状态信息; WM_KEYUP:弹起一个非系统键时产生的消息 WM_CHAR:按下一个非系统键时产生的消息,附加信息参数wParam为按下键的ASCII码,lParam的意思同上;

文档评论(0)

quechui388620 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档