DefMDIChildProc
The DefMDIChildProc
function provides default processing for any window message that the window
procedure of a multiple document interface (MDI) child window does not process.
A window message not processed by the window procedure must be passed to the DefMDIChildProc
function, not to the DefWindowProc function.
LRESULT DefMDIChildProc(
|
HWND hWnd, |
// handle to MDI
child window |
|
UINT uMsg, |
// message |
|
WPARAM wParam, |
// first message
parameter |
|
LPARAM lParam |
// second message
parameter |
|
); |
|
Parameters
hWnd
Identifies
the MDI child window.
uMsg
Specifies the
message to be processed.
wParam
Specifies
additional message-specific information.
lParam
Specifies
additional message-specific information.
Return Values
The return
value specifies the result of the message processing and depends on the message.
Remarks
The DefMDIChildProc
function assumes that the parent window of the MDI child window identified by
the hWnd parameter was created with the MDICLIENT class.
When an
application s window procedure does not handle a message, it typically passes
the message to the DefWindowProc function to process the message. MDI applications use
the DefFrameProc
and DefMDIChildProc functions instead of DefWindowProc to provide
default message processing. All messages that an application would usually pass
to DefWindowProc (such as nonclient messages and the WM_SETTEXT message) should be passed to DefMDIChildProc
instead. In addition, DefMDIChildProc also handles the following
messages:
|
Message |
Response |
|
WM_CHILDACTIVATE |
Performs
activation processing when MDI child windows are sized, moved, or displayed.
This message must be passed. |
|
WM_GETMINMAXINFO |
Calculates
the size of a maximized MDI child window, based on the current size of the
MDI client window. |
|
WM_MENUCHAR |
Passes the
message to the MDI frame window. |
|
WM_MOVE |
Recalculates
MDI client scroll bars if they are present. |
|
WM_SETFOCUS |
Activates
the child window if it is not the active MDI child window. |
|
WM_SIZE |
Performs
operations necessary for changing the size of a window, especially for
maximizing or restoring an MDI child window. Failing to pass this message to
the DefMDIChildProc function produces highly undesirable results. |
|
WM_SYSCOMMAND |
Handles window
menu commands: SC_NEXTWINDOW, SC_PREVWINDOW, SC_MOVE, SC_SIZE, and
SC_MAXIMIZE. |
See Also