Windows各种各种消息投递函数
1、SendMessage:发送消息给指定的窗口过程;直到窗口过程处理了消息才返回。
2、PostMessage:将消息放入消息队列(与指定窗口创建的线程相关)中;无需等待消息处理,立即返回。
不能发送WM_QUIT消息,此消息只能由PostQuitMessage函数发送。
3、PostThreadMessage:发送消息给指定线程的消息队列;无需等待线程处理消息,立即返回。
此函数发送的消息和窗口是无关的。我们只需指定线程ID就OK了,但要保证线程已创建,否则会失败。
4、GetMessage:从调用线程的消息队列中取消息。
当第二个参数为NULL时,它检索以下两种消息:
a、属于调用线程的任何窗口的消息;
b、WM_QUIT消息。(由PostThreadMessag投递给该调用线程的消息)
5、PeekMessage:功能同GetMessage。区别是:
GetMessage:直到一个匹配了过滤条件的消息,被放到消息队列中才返回。
PeekMessage:不管消息是否放入队列,立即返回。
6、DispatchMessage:派遣消息给相应的窗口过程。
7、TranslateMessage:转换虚拟键信息到字符消息。
Windows各种各种消息投递函数的更多相关文章
- 【转】Windows消息投递流程:WM_COMMAND消息流程
原文网址:http://blog.csdn.net/hyhnoproblem/article/details/6182585 该示例通过研究基本的单文档程序的“文件”--“打开”命令,分析WM_COM ...
- Windows运行机理——消息与消息队列
Windows运行机理这系列文章都是来至于<零基础学Qt4编程>——吴迪,个人觉得写得很好,所以进行了搬运和个人加工 Windows程序设计时一种基于消息的时机驱动方式的设计模式,完全不同 ...
- Windows程序设计2(消息机制、菜单)
一 .小记; PostQuitMessage(0); 产生WM_QUIT消息给进程队列,且立即返回,同时使得消息循环退出,使得进程终止.(其实它通过PostMessage(hWnd,WM_QUIT,0 ...
- TWinControl与TControl的覆盖函数(TWinControl对TControl的10个消息覆盖函数,17个覆盖函数,私有虚函数仍可多态)
手工找出来,对比一下,有助于VCL框架的理解.----------------------------------------------------------------------------- ...
- TWinControl的消息覆盖函数大全(41个WM_函数和31个CM_函数,它的WndProc就处理鼠标(转发)、键盘(取消拖动)、焦点、和WM_NCHITTEST一共4类消息)
注意,这些函数只有Private一种形式(也就是不允许覆盖,但仍在动态表格中): 其中TWinControl对TControl有10个消息进行了覆盖(红色标记),其中有2个是WM_消息,8个是CM_消 ...
- WINDOWS特有的消息常量标识符
'========================================'WINDOWS特有的消息常量标识符'======================================== ...
- DefWindowProc是一个会产生消息的函数
先看一道题目: 当用户点击右上角关闭按钮的时候,请给下列Windows做出的响应排个序:A:发送 WM_QUIT 消息 B:发送 WM_CLOSE 消息 C:发送 WM_DESTROY ...
- SCADA 必备函数之 :关于消息的函数
Message Functions BroadcastSystemMessage//是将一条系统消息广播给系统中所有的顶级窗口. BroadcastSystemMessageEx//将消息发送到指定的 ...
- 走进windows编程的世界-----消息处理函数(3)
二 定时器消息 1 定时器消息 WM_TIMER 依照定时器设置时间段,自己主动向窗体发送一个定时器消息WM_TIMER. 优先级比較低. 定时器精度比較低,毫秒级别.消息产生时间也精度比較低 ...
随机推荐
- .Family_物联网
群名称 : .Family_物联网 QQ群号: 群介绍 基于嵌入式,构建各通信模式,网关,平台软件,工业系统等领域,欢迎各位朋友加群,交流学习!
- assert函数用法总结【转】
本文转载自:http://blog.csdn.net/u014082714/article/details/45190505 assert宏的原型定义在<assert.h>中,其作用是如果 ...
- Linux slab分配器【转】
本文转载自:https://www.ibm.com/developerworks/cn/linux/l-linux-slab-allocator/ 良好的操作系统性能部分依赖于操作系统有效管理资源的能 ...
- Ansible 入门指南 - 学习总结
概述 这周在工作中需要去修改 nginx 的配置,发现了同事在使用 ansible 管理者系统几乎所有的配置,从数据库的安装.nginx 的安装及配置.于是这周研究起了 ansible 的基础用法.回 ...
- 【Map】Echarts之iphone销量地图的使用以及详细配置
1.引入echarts库文件 <script charset="utf-8" type="text/javascript" language=" ...
- 51nod 1413 权势二进制
本来刚开始还是想用每一位 -1的个数 然后再乘以10 不断累加 后来发现 完全不是这回事啊 因为本身就是0 和 1 所以只要记录出现的最大的数字 就是答案 因为 n >= 1 // 所以不 ...
- jquery 浏览器打印
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...
- [IDEA插件] - 一个不错的插件
今天看到微信平台一篇推送IDEA插件的文章继而下载了个插件看了下. 名字叫做codehelper.generator codehelper.generator http://plugins.jetbr ...
- 初识C++继承
先是自己凭借自己在课堂上的记忆打了一遍.自然出了错误. //编译错误 #include <iostream> #include <cstdlib> using namespac ...
- LA 3027 合作网络
https://vjudge.net/problem/UVALive-3027 题意: 有n个结点,初始时每个结点的父节点都不存在.你的任务是执行一次I操作和E操作,格式如下: I u v:把结点u的 ...