函数GetMessage

Posted ganxiang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了函数GetMessage相关的知识,希望对你有一定的参考价值。

功能:从调用线程的消息队列里取得消息并放于指定的结构。

函数原型:

BOOL GetMessage(
_Out_ LPMSG lpMsg,
_In_opt_ HWND hWnd,
_In_ UINT wMsgFilterMin,
_In_ UINT wMsgFilterMax);

lpMsg:指向MSG结构的指针,该结构从线程的消息队列里接收消息信息。

hWnd:取得该消息的窗口句柄,值为NULL时,GetMessage会检索任何属于调用线程的窗口消息。

wMsgFilterMin:指定被检索的最小消息值的整数。

wMsgFilterMax:指定被检索的最大消息值的整数。

返回值:如果函数取得WM_QUIT之外的其他消息,返回非零值;如果函数取得WM_QUIT消息,返回0;如果出现错误,返回-1。比如hWnd是无效的窗口句柄或lpMsg是无效的指针。想获得更多的错误信息,调用GetLastError函数。

PS:GetMessage是一个阻塞函数(函数会一直等待知道有消息到来才有返回值),获取消息成功后,线程将从消息队列中删除该消息,但是GetMessage函数不能从消息队列中移除WM_PAINT消息,此消息一直在消息队列中直到被处理;并且GetMessage函数总是检索WM_QUIT消息,不管它是否在第3个参数和第4个参数指定的范围内。

 

以上是关于函数GetMessage的主要内容,如果未能解决你的问题,请参考以下文章

测开之函数进阶篇・第五篇《递归函数纯函数匿名函数偏函数》

8InfluxDB常用函数聚合函数,count()函数,DISTINCT()函数,MEAN()函数,MEDIAN()函数,SPREAD()函数,SUM()函数

Kotlin函数式编程 ② ( 过滤函数 | predicate 谓词函数 | filter 过滤函数 | 合并函数 | zip 函数 | folder 函数 | 函数式编程意义 )

Kotlin函数式编程 ② ( 过滤函数 | predicate 谓词函数 | filter 过滤函数 | 合并函数 | zip 函数 | folder 函数 | 函数式编程意义 )

1.19.9.函数概览函数引用精确函数引用模糊函数引用函数解析顺序精确函数引用模糊函数引用自定义函数准备工作概述开发指南函数类求值方法标量函数表值函数聚合函数

Kotlin函数式编程 ① ( 函数式编程简介 | 高阶函数 | 函数类别 | Transform 变换函数 | 过滤函数 | 合并函数 | map 变换函数 | flatMap 变换函数 )