|
Overview |
|
|
|
Group |
|
|
|
Quick Info
Windows NT
| Yes
| Win95
| Yes
| Win32s
| Yes
| Import Library
| user32.lib
| Header File
| winuser.h
| Unicode
| WinNT
| Platform Notes
| None
|
|
|
PeekMessage
The
PeekMessage function checks a thread message queue for a message and places the message
(if any) in the specified structure.
BOOL PeekMessage(
LPMSG lpMsg,
| // pointer to structure for message
|
HWND hWnd,
| // handle to window
|
UINT wMsgFilterMin,
| // first message
|
UINT wMsgFilterMax,
| // last message
|
UINT wRemoveMsg
| // removal flags
|
);
|
|
Parameters
lpMsg
Points to an
MSG structure that contains message information from the Windows-based
application queue.
hWnd
Identifies the window whose messages are to be examined.
wMsgFilterMin
Specifies the value of the first message in the range of messages to be
examined.
wMsgFilterMax
Specifies the value of the last message in the range of messages to be
examined.
wRemoveMsg
Specifies how messages are handled. This parameter can be one of the following
values:
Value
| Meaning
|
PM_NOREMOVE
| Messages are not removed from the queue after processing by PeekMessage.
|
PM_REMOVE
| Messages are removed from the queue after processing by PeekMessage.
|
You can optionally combine the value PM_NOYIELD with either PM_NOREMOVE or
PM_REMOVE. However, PM_NOYIELD has no effect on 32-bit Windows applications. It is
defined in Win32 solely to provide compatibility with applications written for
previous versions of Windows, where it was used to prevent the current task
from halting and yielding system resources to another task. 32-bit Windows
applications always run simultaneously.
Return Values
If a message is available, the return value is nonzero.
If no messages are available, the return value is zero.
Remarks
Unlike the
GetMessage function, the
PeekMessage function does not wait for a message to be placed in the queue before
returning.
PeekMessage retrieves only messages associated with the window identified by the
hWnd parameter or any of its children as specified by the
IsChild function, and within the range of message values given by the
wMsgFilterMin and
wMsgFilterMax parameters. If
hWnd is NULL,
PeekMessage retrieves messages for any window that belongs to the current thread making
the call. (
PeekMessage does not retrieve messages for windows that belong to other threads.) If
hWnd is
1,
PeekMessage only returns messages with a
hWnd value of NULL, as posted by the
PostAppMessage function. If
wMsgFilterMin and
wMsgFilterMax are both zero,
PeekMessage returns all available messages (that is, no range filtering is performed).
The WM_KEYFIRST and WM_KEYLAST constants can be used as filter values to
retrieve all keyboard messages; the WM_MOUSEFIRST and WM_MOUSELAST constants can be
used to retrieve all mouse messages.
The
PeekMessage function normally does not remove WM_PAINT messages from the queue. WM_PAINT
messages remain in the queue until they are processed. However, if a WM_PAINT
message has a null update region,
PeekMessage does remove it from the queue.
See Also
GetMessage,
IsChild,
MSG,
PostAppMessage,
WaitMessage
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database