#define PM_NOREMOVE 0x0000 |
#define PM_NOYIELD 0x0002 |
#define PM_REMOVE 0x0001 |
Definition at line 2209 of file window.h.
Referenced by GetMessage().
The message structure.
Broadcasts a message to all main window on the desktop.
This function posts the message specified by (iMsg, wParam, lParam) to all the main windows on the desktop.
iMsg | The message identifier. | |
wParam | The first parameter of the message. | |
lParam | The second parameter of the message. |
int DispatchMessage | ( | PMSG | pMsg | ) |
Dispatches a message to the window's callback procedure.
This function dispatches the message pointed to by pMsg to the target window's callback procedure.
pMsg | The pointer to the message. |
Example:
/* * A typical message loop. */ MSG Msg; MAINWINCREATE CreateInfo; HWND hMainWnd; InitCreateInfo (&CreateInfo); hMainWnd = CreateMainWindow (&CreateInfo); if (hMainWnd == HWND_INVALID) return -1; while (GetMessage (&Msg, hMainWnd)) { TranslateMessage (&Msg); DispatchMessage (&Msg); }
Gets a message from the message queue of a main window.
This function gets a message from the message queue of the main window hMainWnd, and returns until there is a message in the message queue.
pMsg | Pointer to the result message. | |
hMainWnd | Handle to the window. |
Example:
/* * A typical message loop. */ MSG Msg; MAINWINCREATE CreateInfo; HWND hMainWnd; InitCreateInfo (&CreateInfo); hMainWnd = CreateMainWindow (&CreateInfo); if (hMainWnd == HWND_INVALID) return -1; while (GetMessage (&Msg, hMainWnd)) { TranslateMessage (&Msg); DispatchMessage (&Msg); }
Definition at line 2267 of file window.h.
References PeekMessageEx(), PM_REMOVE, and TRUE.
Checks if there is any pending message in the message queue of a main window.
This function checks whether there is any pending message in the message queue of the main window hMainWnd.
hMainWnd | The handle to the main window. |
BOOL PeekMessage | ( | PMSG | pMsg, | |
HWND | hWnd, | |||
int | iMsgFilterMin, | |||
int | iMsgFilterMax, | |||
UINT | uRemoveMsg | |||
) | [inline, static] |
Peeks a message from the message queue of a main window.
This functions peek a message from the message queue of the window hWnd and returns immediatly. Unlike GetMessage, this function does not wait for a message.
pMsg | Pointer to the result message. | |
hWnd | The handle to the window. | |
iMsgFilterMin | The min identifier of the message that should be peeked. | |
iMsgFilterMax | The max identifier of the message that should be peeked. | |
uRemoveMsg | Whether remove the message from the message queue. Should be the following values:
|
Definition at line 2332 of file window.h.
References FALSE, and PeekMessageEx().
BOOL PeekMessageEx | ( | PMSG | pMsg, | |
HWND | hWnd, | |||
int | iMsgFilterMin, | |||
int | iMsgFilterMax, | |||
BOOL | bWait, | |||
UINT | uRemoveMsg | |||
) |
Peeks a message from the message queue of a main window.
This functions peek a message from the message queue of the window hWnd; if bWait is TRUE, it will wait for the message, else return immediatly.
pMsg | Pointer to the result message. | |
hWnd | The handle to the window. | |
iMsgFilterMin | The min identifier of the message that should be peeked. | |
iMsgFilterMax | The max identifier of the message that should be peeked. | |
bWait | Whether to wait for a message. | |
uRemoveMsg | Whether remove the message from the message queue. Should be the following values:
|
Referenced by GetMessage(), and PeekMessage().
BOOL PeekPostMessage | ( | PMSG | pMsg, | |
HWND | hWnd, | |||
int | iMsgFilterMin, | |||
int | iMsgFilterMax, | |||
UINT | uRemoveMsg | |||
) |
Peeks a post message from the message queue of a main window.
This functions peek a message from the message queue of the window hWnd and returns immediatly. Unlike PeekMessage, this function only peek a post message.
pMsg | Pointer to the result message. | |
hWnd | The handle to the window. | |
iMsgFilterMin | The min identifier of the message that should be peeked. | |
iMsgFilterMax | The max identifier of the message that should be peeked. | |
uRemoveMsg | Whether remove the message from the message queue. Should be the following values:
|
Posts a message into the message queue of a window and returns immediatly.
This functions posts a message into the message queue of the window hWnd and returns immediately.
hWnd | The handle to the window. | |
iMsg | The identifier of the message. | |
wParam | The first parameter of the message. | |
lParam | The second parameter of the message. |
ERR_OK | Post message successfully. | |
ERR_QUEUE_FULL | The message queue is full. | |
ERR_INV_HWND | Invalid window handle. |
int PostQuitMessage | ( | HWND | hWnd | ) |
Puts a MSG_QUIT message into the message queue of a main window.
This function puts a MSG_QUIT message into the message queue of the main window hWnd. The next call to GetMessage will return 0.
hWnd | The handle to the main window. |
Posts a synchronical message to a window which is in different thread.
This function posts the synchronical message specified by (iMsg, wParam, lParam) to the window hWnd which is in different thread. This function will return until the message is handled by the window procedure.
hWnd | The handle to the window. | |
iMsg | The message identifier. | |
wParam | The first parameter of the message. | |
lParam | The second parameter of the message. |
Sends an asynchronical message to a window.
This function sends the asynchronical message specified by (iMsg, wParam, lParam) to the window hWnd which is in different thread. This function calls the window procedure immediately, so it is very dangerous.
hWnd | The handle to the window. | |
iMsg | The message identifier. | |
wParam | The first parameter of the message. | |
lParam | The second parameter of the message. |
Sends a message to a window.
This function sends a message to the window hWnd, and will return until the message-handling process returns.
hWnd | The handle to the window. | |
iMsg | The identifier of the message. | |
wParam | The first parameter of the message. | |
lParam | The second parameter of the message. |
Sends a notification message to a window.
This function sends the notification message specified by (iMsg, wParam, lParam) to the window hWnd. This function puts the notication message in the message queue and then returns immediately.
hWnd | The handle to the window. | |
iMsg | The message identifier. | |
wParam | The first parameter of the message. | |
lParam | The second parameter of the message. |
Sets the auto-repeat message.
This function sets the auto-repeat message. When the default message procedure receives an MSG_IDLE message, the default handler will send the auto-repeat message to the target window as a notification message.
hwnd | The handle to the target window. Set it to zero to disable the auto-repeat message. | |
msg | The identifier of the auto-repeat message. | |
wParam | The first parameter of the auto-repeat message. | |
lParam | The second parameter of the auto-repeat message. |
BOOL SetKeyboardLayout | ( | const char * | kbd_layout | ) |
Sets a new keyboard layout.
This function sets the keymaps to translate key scancodes to MSG_CHAR or MSG_KEYSYM messages. The default keymaps is for US PC keyboard layout, you can call this function to set a different keyboard layout. The argument of kbd_layout specifies the name of the keyboard layout.
kbd_layout | The keyboard layout name. It can be one of the following values: |
int ThrowAwayMessages | ( | HWND | pMainWnd | ) |
Removes all messages in the message queue associated with a window.
This function removes all messages which are associated with the specified window pMainWnd.
pMainWnd | The handle to the window. |
Translates a key down and key up message to a corresponding character.
This function translates a key down and key up message to a character. If the message is not a key message, this function does nothing.
The behavior of this function is inflected by the current keyboard layout. The default keyboard layout is US PC keyboard, but you can call SetKeyboardLayout function to set a different keyboard layout.
message | The type of message. | |
wParam | Message parameter. | |
lParam | Message parameter. | |
ch | A string buffer for storing translated characters. |
Translates key down and key up messages to MSG_CHAR message and post it into the message queue.
This function translates key down and key up message to an MSG_CHAR message or some MSG_KEYSYM messages, and send the message(s) to the window procedure as a notification message. If the message is not a key message, this function does nothing.
The behavior of this function is inflected by the current keyboard layout. The default keyboard layout is US PC keyboard, but you can call SetKeyboardLayout function to set a different keyboard layout.
pMsg | The pointer of message. |
Waits for a message from the message queue of a main window.
This function waits for a message from the message queue of the main window hMainWnd, and returns until there is a message in the message queue. Unlike GetMessage, this function does not remove the message from the message queue.
pMsg | Pointer to the result message. | |
hMainWnd | Handle to the window. |