GetQueueStatus

【勇芳软件工作室】汉化HomePreviousNext

GetQueueStatus函数返回指示在调用线程的消息队列中找到的消息类型的标志。

DWORD GetQueueStatus(

UINT 【旗】//队列状态标志
); 

参数

【旗】

指定队列状态标志,给出要检查的消息类型。此参数可以是以下值的组合:

含义
QS_ALLEVENTS队列中输入的WM_TIMER,WM_PAINT,WM_HOTKEY或已发邮件。
QS_ALLINPUT任何消息都在队列中。
QS_HOTKEY队列中有一个WM_HOTKEY消息。
QS_INPUT输入消息在队列中。
QS_KEYWM_KEYUP,WM_KEYDOWN,WM_SYSKEYUP或WM_SYSKEYDOWN消息在队列中。
QS_MOUSEWM_MOUSEMOVE消息或鼠标按钮消息(WM_LBUTTONUP,WM_RBUTTONDOWN等)。
QS_MOUSEBUTTON鼠标按钮消息(WM_LBUTTONUP,WM_RBUTTONDOWN等)。
QS_MOUSEMOVE一个WM_MOUSEMOVE消息在队列中。
QS_PAINT一个WM_PAINT消息在队列中。
QS_POSTMESSAGE发布的消息(除了刚刚列出的消息)在队列中。
QS_SENDMESSAGE另一个线程或应用程序发送的消息在队列中。
QS_TIMER队列中有WM_TIMER消息。

返回值

返回值的高位字表示当前队列中的消息类型。低位字指示自GetQueueStatusGetMessagePeekMessage功能上次调用以来已添加到队列中并且仍处于队列中的消息类型。

备注

在返回值中存在QS_标志不能保证对PeekMessageGetMessage函数的后续调用将返回一条消息。GetMessagePeekMessage执行一些可能导致在内部处理消息的内部过滤。因此,来自GetQueueStatus的返回值应该仅被视为是否应调用GetMessagePeekMessage的提示。

也可以看看

GetInputState, GetMessage, PeekMessage