Функция GetQueueStatus (winuser.h)
Извлекает тип сообщений, найденных в очереди сообщений вызывающего потока.
Синтаксис
DWORD GetQueueStatus(
[in] UINT flags
);
Параметры
[in] flags
Тип: UINT
Типы сообщений, для которых проверка. Этот параметр может иметь одно или несколько из следующих значений.
Значение | Значение |
---|---|
QS_KEY 0x0001 |
В очереди находится сообщение WM_KEYUP, WM_KEYDOWN, WM_SYSKEYUP или WM_SYSKEYDOWN . |
QS_MOUSEMOVE 0x0002 |
В очереди находится сообщение WM_MOUSEMOVE . |
QS_MOUSEBUTTON 0x0004 |
Сообщение кнопки мыши (WM_LBUTTONUP, WM_RBUTTONDOWN и т. д.). |
QS_POSTMESSAGE 0x0008 |
Отправленное сообщение (отличное от перечисленных здесь) находится в очереди. Дополнительные сведения см. в разделе PostMessage. Это значение очищается при вызове Метода GetMessage или PeekMessage независимо от того, фильтруете ли вы сообщения. |
QS_TIMER 0x0010 |
В очереди находится сообщение WM_TIMER . |
QS_PAINT 0x0020 |
В очереди находится сообщение WM_PAINT . |
QS_SENDMESSAGE 0x0040 |
Сообщение, отправленное другим потоком или приложением, находится в очереди. Дополнительные сведения см. в разделе SendMessage. |
QS_HOTKEY 0x0080 |
В очереди находится WM_HOTKEY сообщение. |
QS_ALLPOSTMESSAGE 0x0100 |
Отправленное сообщение (отличное от перечисленных здесь) находится в очереди. Дополнительные сведения см. в разделе PostMessage. Это значение очищается при вызове Метода GetMessage или PeekMessage без фильтрации сообщений. |
QS_RAWINPUT 0x0400 |
Windows XP и более поздней версии: в очереди находится необработанное входное сообщение. Дополнительные сведения см. в разделе Необработанные входные данные. |
QS_TOUCH 0x0800 |
Windows 8 и более новых версий: в очереди находится сообщение сенсорного ввода. Дополнительные сведения см. в разделе Сенсорный ввод. |
QS_POINTER 0x1000 |
Windows 8 и более новых версий: в очереди находится входное сообщение указателя. Дополнительные сведения см. в разделе Ввод указателя. |
QS_MOUSE (QS_MOUSEMOVE | QS_MOUSEBUTTON) |
Сообщение WM_MOUSEMOVE или сообщение кнопки мыши (WM_LBUTTONUP, WM_RBUTTONDOWN и т. д.). |
QS_INPUT (QS_MOUSE | QS_KEY | QS_RAWINPUT | QS_TOUCH | QS_POINTER) |
Входное сообщение находится в очереди. |
QS_ALLEVENTS (QS_INPUT | QS_POSTMESSAGE | QS_TIMER | QS_PAINT | QS_HOTKEY) |
В очереди находится входное, WM_TIMER, WM_PAINT, WM_HOTKEY или отправленное сообщение. |
QS_ALLINPUT (QS_INPUT | QS_POSTMESSAGE | QS_TIMER | QS_PAINT | QS_HOTKEY | QS_SENDMESSAGE) |
Любое сообщение находится в очереди. |
Возвращаемое значение
Тип: DWORD
Слово высокого порядка возвращаемого значения указывает типы сообщений, которые в настоящее время находятся в очереди. Слово нижнего порядка указывает типы сообщений, которые были добавлены в очередь и которые остаются в очереди с момента последнего вызова функции GetQueueStatus, GetMessage или PeekMessage .
Комментарии
Наличие флага QS_ в возвращаемом значении не гарантирует, что последующий вызов функции GetMessage или PeekMessage вернет сообщение. GetMessage и PeekMessage выполняют некоторые внутренние фильтры, которые могут привести к внутренней обработке сообщения. По этой причине возвращаемое значение из GetQueueStatus следует рассматривать только как подсказку о том, следует ли вызывать GetMessage или PeekMessage .
Флаги QS_ALLPOSTMESSAGE и QS_POSTMESSAGE различаются по мере их очистки. QS_POSTMESSAGE очищается при вызове Метода GetMessage или PeekMessage независимо от того, фильтруете ли вы сообщения. QS_ALLPOSTMESSAGE очищается при вызове GetMessage или PeekMessage без фильтрации сообщений (wMsgFilterMin и wMsgFilterMax имеют значение 0). Это может быть полезно при многократном вызове PeekMessage для получения сообщений в разных диапазонах.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | winuser.h (включая Windows.h) |
Библиотека | User32.lib |
DLL | User32.dll |
Набор API | ext-ms-win-ntuser-message-l1-1-0 (представлено в Windows 8) |
См. также раздел
Основные понятия
Справочные материалы