Skip to content

Latest commit

 

History

History
204 lines (135 loc) · 6.13 KB

nf-winuser-defmdichildproca.md

File metadata and controls

204 lines (135 loc) · 6.13 KB
UID title description helpviewer_keywords old-location tech.root ms.assetid ms.date ms.keywords req.header req.include-header req.target-type req.target-min-winverclnt req.target-min-winversvr req.kmdf-ver req.umdf-ver req.ddi-compliance req.unicode-ansi req.idl req.max-support req.namespace req.assembly req.type-library req.lib req.dll req.irql targetos req.typenames req.redist ms.custom f1_keywords dev_langs topic_type api_type api_location api_name
NF:winuser.DefMDIChildProcA
DefMDIChildProcA function (winuser.h)
Provides default processing for any window message that the window procedure of a multiple-document interface (MDI) child window does not process. (ANSI)
DefMDIChildProcA
winuser/DefMDIChildProcA
winmsg\defmdichildproc.htm
winmsg
VS|winui|~\winui\windowsuserinterface\windowing\multipledocumentinterface\multipledocumentinterfacereference\multipledocumentinterfacefunctions\defmdichildproc.htm
12/05/2018
DefMDIChildProc, DefMDIChildProc function [Windows and Messages], DefMDIChildProcA, DefMDIChildProcW, _win32_DefMDIChildProc, _win32_defmdichildproc_cpp, winmsg.defmdichildproc, winui._win32_defmdichildproc, winuser/DefMDIChildProc, winuser/DefMDIChildProcA, winuser/DefMDIChildProcW
winuser.h
Windows.h
Windows
Windows 2000 Professional [desktop apps only]
Windows 2000 Server [desktop apps only]
DefMDIChildProcW (Unicode) and DefMDIChildProcA (ANSI)
User32.lib
User32.dll
Windows
19H1
DefMDIChildProcA
winuser/DefMDIChildProcA
c++
APIRef
kbSyntax
DllExport
User32.dll
DefMDIChildProc
DefMDIChildProcA
DefMDIChildProcW

DefMDIChildProcA function

-description

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.

-parameters

-param hWnd [in]

Type: HWND

A handle to the MDI child window.

-param uMsg [in]

Type: UINT

The message to be processed.

-param wParam [in]

Type: WPARAM

Additional message-specific information.

-param lParam [in]

Type: LPARAM

Additional message-specific information.

-returns

Type: LRESULT

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.
 

Note

The winuser.h header defines DefMDIChildProc as an alias which automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.

-see-also

Conceptual

DefFrameProc

DefWindowProc

Multiple Document Interface

Reference

WM_CHILDACTIVATE

WM_GETMINMAXINFO

WM_MENUCHAR

WM_MOVE

WM_SETFOCUS

WM_SETTEXT

WM_SIZE

WM_SYSCOMMAND