Lesson 0-1_2 窗口和消息.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Lesson B-1_2 窗口与消息 一、窗口的创建 建立窗口很简单,只需调用CreateWindow函数即可在我们CreateWindow函数之前,一背景知识会大有帮助。 进行Windows程序设计,实际上是在进行一种对象的程序设计(OOP)。这一点在Windows中使用得最多的对象上表现最为明显。这种对象正是Windows之所以命名为Windows的原因,这窗口。 桌面上最明显的窗口就是应用程序窗口。这些窗口含有显示程序名称的标题、菜单甚至可能还有工具和滚动条。另一类窗口是对话框,它可以有标题也可以没有标题。装饰对话框表面的还有各式各样的按、单选按钮、复选框、、滚动条和文其中每一个小的对象都是一个窗口。更确切地说,这些都称为子窗口或控件窗口或子窗口控件。 作为对象,使用者会在屏幕上看到这些窗口,并通过键盘和鼠标直接与它们进行交互操作。窗口以消息的形式接收窗口的输入,窗口也消息与其它窗口通讯。对的理解将是学习如何Windows程序所必须越过的障碍之一。 我们知道,大多数的Windows程序都有大小合适的应用程序窗口。也就是说,您能够通过鼠标拖动窗口的边框来改变窗口的大小。通常,程序将通过改变窗口中的内容来响应这种大小的变化。是Windows本身而不是应用程序在处理与使用者重新调整窗口大小相关的全部。 应用程序是如何知道改变了窗口的大小的呢?此类消息给的机制。问题理解Windows。当改变窗口的大小时,Window程序发送一消息。然后程序调整窗口变化。 Windows向应用程序发送消息操作系统消息呢?Windows向应用程序发送消息Windows调用了该应用程序函数,参数消息。这函数称为窗口。 对程序操作系统的做法是很熟悉的。例如,程序在打开磁盘文件时就要使用有关的系统,而这正是Windows基础。 程序的每一个窗口都有相窗口。这个窗口一个函数,可以动态链接库中。Windows通过窗口窗口消息。窗口消息处理,然后将控制Windows。窗口窗口消息。这些消息窗口,Windows程序开始执行,Windows为该程序建立一个消息队列。这个消息队列用来存放该程序可能建立的各种不同窗口的消息。程序中有一小段程序代码,叫做消息循环,用来从队列中消息,并且将它们给相应的窗口有些消息直接发送给窗口,不放入消息队列中。 窗口、窗口类、窗口、消息队列、消息循环和窗口消息是如何相互配合的。HELLOWIN程序 建立一个窗口首先需要注册一个窗口类,需要一个窗口处理窗口消息。Windows程序都3.通盘考量 实际上,每一个Windows程序代码中都包括HELLOWIN.C程序的大部分。没人能真正记住此程序的全部写法;通常,Windows程序在开始写一个新程序时总是会复制一个现有的程序,然后再做相应的修改。 如可以在系统菜单中执行所有选项(就是按下在标题栏最左端的小图标);也可以从系统菜单中选择 Close选项,或者单击标题栏最右端的关闭按钮,或者双击标题栏最左端的图标,来关闭窗口以终止程序的执行。(1)Windows函数 HELLOWIN至少了18个Windows函数。下面以它们在HELLOWIN中出现的次序列出这些函数以及各自的简明描述: LoadIcon 加载图标供程序使用。 LoadCursor 加载鼠标光标供程序使用。 GetStockObject 取得一个图形对象(是取得绘制窗口背景的画刷对象)。 RegisterClass 为程序窗口注册窗口类。 MessageBox 显示消息框。 CreateWindow 根据窗口类建立一个窗口。 ShowWindow 在屏幕上显示窗口。 UpdateWindow 指示窗口自。 GetMessage 从消息队列中消息。 TranslateMessage 翻译某些键盘消息。 DispatchMessage 将消息发送给窗口。 PlaySound 播放一个声音文件。 BeginPaint 标明开始绘制窗口。 GetClientRect 获取窗口区的大小。 DrawText 显示字符串。 EndPaint 结束绘制窗口。 PostQuitMessage 在消息队列中插入一个退出程序消息。 DefWindowProc 执行的消息处理。 这些函数均在Platform SDK文件中说明,并在不同的头文件中声明,其中绝大多数声明在WINUSER.H中。大写标识符 HELLOWIN.C中有大写的标识符,这些标识符是在Windows头文件中定义的。有些标识符含有两个字母或者三个字母的前缀,这些前缀后着一个线: 这些数值常。前缀指示该常所属的类别,如表-1所示。表-1 前缀 类别 CS 类 CW 建立窗口 DT 文绘制 IDI 图标ID IDC 光标ID

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档