DefMDIChildProc  30T_Z.P 

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 DefWindowProc32D1NBH 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 DefWindowProc32D1NBH function to process the message. MDI applications use the DefFrameProc1MD1YCP 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_0KJSB message) should be passed to DefMDIChildProc instead. In addition, DefMDIChildProc also handles the following messages:

Message

Response

WM_CHILDACTIVATE8L7GQ.

Performs activation processing when MDI child windows are sized, moved, or displayed. This message must be passed.

WM_GETMINMAXINFOJV9ZT5

Calculates the size of a maximized MDI child window, based on the current size of the MDI client window.

WM_MENUCHAR12QEIPE

Passes the message to the MDI frame window.

WM_MOVED9_GXF

Recalculates MDI client scroll bars if they are present.

WM_SETFOCUS1ML4F9E

Activates the child window if it is not the active MDI child window.

WM_SIZED9CB1F

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_SYSCOMMAND3XMTV4T

Handles window menu commands: SC_NEXTWINDOW, SC_PREVWINDOW, SC_MOVE, SC_SIZE, and SC_MAXIMIZE.

 

See Also

DefFrameProc, DefWindowProc, WM_CHILDACTIVATE, WM_GETMINMAXINFO, WM_MENUCHAR, WM_MOVE, WM_SETFOCUS, WM_SETTEXT, WM_SIZE, WM_SYSCOMMAND