队列化消息与非队列化消息
来源:互联网 发布:女朋友长得丑 知乎 编辑:程序博客网 时间:2024/06/04 19:18
消息能够被分为「队列化的」和「非队列化的」。队列化的消息是由Windows放入程序消息队列中的。在程序的消息循环中,重新传回并分配给窗口消息处理程序。非队列化的消息在Windows呼叫窗口时直接送给窗口消息处理程序。也就是说,队列化的消息被「发送」给消息队列,而非队列化的消息则「发送」给窗口消息处理程序。任何情况下,窗口消息处理程序都将获得窗口所有的消息--包括队列化的和非队列化的。窗口消息处理程序是窗口的「消息中心」。
队列化消息基本上是使用者输入的结果,以击键(如WM_KEYDOWN和WM_KEYUP消息)、击键产生的字符(WM_CHAR)、鼠标移动(WM_MOUSEMOVE)和鼠标按钮(WM_LBUTTONDOWN)的形式给出。队列化消息还包含时钟消息(WM_TIMER)、更新消息(WM_PAINT)和退出消息(WM_QUIT)。
非队列化消息则是其它消息。在许多情况下,非队列化消息来自呼叫特定的Windows函数。例如,当WinMain呼叫CreateWindow时,Windows将建立窗口并在处理中给窗口消息处理程序发送一个WM_CREATE消息。当WinMain呼叫ShowWindow时,Windows将给窗口消息处理程序发送WM_SIZE和WM_SHOWWINDOW消息。当WinMain呼叫UpdateWindow时,Windows将给窗口消息处理程序发送WM_PAINT消息。键盘或鼠标输入时发出的队列化消息信号,也能在非队列化消息中出现。例如,用键盘或鼠标选择了一个菜单项时,键盘或鼠标消息就是队列化的,而说明菜单项已选中的WM_COMMAND消息则可能就是非队列化的。
- 队列化消息与非队列化消息
- 队列化消息与非队列化消息
- 队列化消息与非队列化消息 & & Windows消息机制要点
- 队列化消息和非队列化消息
- 消息与消息队列
- 消息与消息队列
- 消息与消息队列
- 消息与消息队列
- 消息与消息队列
- windows——消息——队列化消息 非队列化消息
- 队列消息和非队列消息
- RabbitMQ之队列与消息持久化
- RabbitMQ之队列与消息持久化
- RabbitMQ队列与消息的持久化
- 关于消息与消息队列
- 消息队列与消息循环
- 消息队列与消息栈
- 线程与消息队列
- no result defined for action and result
- Windows编程之初步之窗口类别与注册
- 单链表的类定义
- 安装 RubyGems
- 一次ghost失败的经历以及分区表和MBR
- 队列化消息与非队列化消息
- Linux内核引导
- 如何编程ms sql server 2000 查询某个表的所有触发器名称
- WPF程序设计读书笔记(0)
- 常用的电脑知识
- 多核时代的并行编程模型应该是什么样子
- step1
- 《算法之美》---二叉堆及其实现
- uploadify插件可选参数的详细介绍(