Функция GetQueueStatus


Функция GetQueueStatus обозначает тип сообщений, найденных в очереди сообщений вызывающего потока.

Синтаксис

DWORD GetQueueStatus(
    UINT flags
);

Параметры

flags

[in] Определяет типы сообщений,  которые проверяются. Этот параметр может состоять из одного или нескольких нижеследующих значений:

Значение

Предназначение

QS_ALLEVENTS

В очереди находится сообщение о вводе данных, WM_TIMER, WM_PAINT, WM_HOTKEY или помещенное (синхронное) сообщение. 

QS_ALLINPUT

В очереди находится какое-либо сообщение. 

QS_ALLPOSTMESSAGE
В очереди находится помещенное (синхронное) сообщение (другое, а не то, которое перечислено здесь). 

QS_HOTKEY

В очереди находится сообщение WM_HOTKEY

QS_INPUT

В очереди находится сообщение о вводе данных. Оно составляется из QS_KEY и QS_MOUSE.

Windows XP: Флажок также включает в себя QS_RAWINPUT

QS_KEY

В очереди находится сообщение WM_KEYUP, WM_KEYDOWN, WM_SYSKEYUP или WM_SYSKEYDOWN.

QS_MOUSE

В очереди находится сообщение WM_MOUSEMOVE или сообщение от кнопки мыши (WM_LBUTTONUP, WM_RBUTTONDOWN и так далее). 

QS_MOUSEBUTTON

Сообщение от кнопки мыши (WM_LBUTTONUP, WM_RBUTTONDOWN и так далее). 

QS_MOUSEMOVE

В очереди находится сообщение WM_MOUSEMOVE

QS_PAINT

В очереди находится сообщение WM_PAINT.

QS_POSTMESSAGE

В очереди находится помещенное (синхронное) сообщение (отличающееся от тех, которые перечислены здесь) находится в очереди. 

QS_RAWINPUT Windows XP: В очереди находится сообщение ввода необработанных данных.  Для получения дополнительной информации, см. Ввод необработанных данных. 

QS_SENDMESSAGE

В очереди находится сообщение, отправленное другим потоком или прикладной программой. 

QS_TIMER

В очереди находится сообщение WM_TIMER

Возвращаемые значения

Старшее слово возвращаемого значения указывает типы сообщений в настоящее время находящихся в очереди. Младшее слово указывает типы сообщений, которые были добавлены в очередь, и которые все еще в очереди начиная с последнего вызова функции GetQueueStatus, GetMessage или PeekMessage.

Замечания

Присутствие флажка QS_ в величине возвращаемого значения не гарантирует, что последующий вызов функции PeekMessage или GetMessage возвратит значение сообщения. GetMessage и PeekMessage исполняют некоторую внутреннюю фильтрацию, которая может заставлять сообщение быть обработанным внутри. По этой причине, величина возвращаемого значения от GetQueueStatus должна рассматриваться, только как подсказка, но так или иначе должна быть вызвана функция GetMessage или PeekMessage.

Флажки QS_ALLPOSTMESSAGE и QS_POSTMESSAGE  отличаются тем, когда они сбрасываются. QS_POSTMESSAGE сбрасывается, когда Вы вызываете функцию GetMessage или PeekMessage или же Вы фильтруете сообщения. QS_ALLPOSTMESSAGE сбрасывается, когда Вы вызываете функцию GetMessage или PeekMessage без фильтрации сообщений (параметры wMsgFilterMin, и wMsgFilterMax равны 0). Это может быть полезно применить, когда Вы вызываете функцию PeekMessage много раз, чтобы получить сообщения в различных диапазонов.

Смотри также

Обзор Сообщения и очереди сообщений, GetInputStateGetMessagePeekMessage

Размещение и совместимость GetQueueStatus

Windows. NET Server

Да

Windows XP

Да

Windows 2000

Да

Windows NT

Да версии 3.1 и выше

Windows Me

Да

Windows 98

Да

Windows 95

Да

Используемая библиотека

User32.lib

Заголовочный файл

 

- объявлено в

Winuser.h

- включено в

Windows.h

Unicode

Нет

Замечания по платформе

Не имеется

 

Назад в оглавление
На главную страницу
На оглавление справки

Hosted by uCoz