getQueueStatus 函式 (winuser.h)
擷取在呼叫線程消息佇列中找到的訊息類型。
語法
DWORD GetQueueStatus(
[in] UINT flags
);
參數
[in] flags
類型: UINT
要檢查的訊息類型。 此參數可以是下列一或多個值。
值 | 意義 |
---|---|
QS_KEY 0x0001 |
佇列中有WM_KEYUP、WM_KEYDOWN、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旗標在清除時會有所不同。 當您 呼叫 GetMessage 或 PeekMessage 時,不論您是否要篩選訊息,就會清除QS_POSTMESSAGE。 當您呼叫 GetMessage 或 PeekMessage 而不篩選 wMsgFilterMin 和 wMsgFilterMax (訊息時,會清除QS_ALLPOSTMESSAGE為 0) 。 當您多次呼叫 PeekMessage 以取得不同範圍中的訊息時,這非常有用。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | winuser.h (包含 Windows.h) |
程式庫 | User32.lib |
Dll | User32.dll |
API 集合 | ext-ms-win-ntuser-message-l1-1-0 (Windows 8) |
另請參閱
概念
參考