Microsoft KB Archive/142317

= HOWTO: How to Create a Minimized/Maximized MDI Child Window =

Article ID: 142317

Article Last Modified on 11/21/2006

-

APPLIES TO

 Microsoft Foundation Class Library 4.2, when used with:  Microsoft Visual C++ 1.0 Professional Edition

 Microsoft Visual C++ 1.5 Professional Edition

 Microsoft Visual C++ 1.51

 Microsoft Visual C++ 1.52 Professional Edition</li></ul>

 Microsoft Visual C++ 1.0 Professional Edition</li></ul>

 Microsoft Visual C++ 2.0 Professional Edition</li></ul>

 Microsoft Visual C++ 2.1</li></ul>

 Microsoft Visual C++ 2.2</li></ul>

 Microsoft Visual C++ 4.0 Standard Edition</li></ul> </li></ul>

-

<div class="notice_section">

This article was previously published under Q142317

<div class="summary_section">

SUMMARY
To create an initially minimized or maximized document in an MDI application, derive a class from CMDIChildWnd and override ActivateFrame. In the ActivateFrame member function, call the ActivateFrame function in the base class, and pass SW_SHOWMINIMIZED or SW_SHOWMAXIMIZED as the parameter.

<div class="moreinformation_section">

MORE INFORMATION
If you're using a version of Visual C++ earlier than 4.0, it is necessary to derive a class from CMDIChildWnd and substitute the new class name in the CMultiDocTemplate used in your CWinApp-derived InitInstance function. To do so, use ClassWizard to add a class called CChildFrame derived from CMDIChildWnd. Include the header file in your application's .cpp file. Then change the line indicated below in your InitInstance function: CMultiDocTemplate* pDocTemplate; pDocTemplate = new CMultiDocTemplate(       IDR_MDIAPPTYPE,        RUNTIME_CLASS(CMDIAppDoc),        RUNTIME_CLASS(CChildFrame), // change CMDIChildWnd to CChildFrame        RUNTIME_CLASS(CMDIAppView)); AddDocTemplate(pDocTemplate); In Visual C++ 4.0, deriving a class from CMDIChildWnd is not required because one is already provided for you.

In the CChildFrame class, override the ActivateFrame member function as follows: void CChildFrame::ActivateFrame(int nCmdShow) {   if (nCmdShow == -1) nCmdShow = SW_SHOWMAXIMIZED;

CMDIChildWnd::ActivateFrame(nCmdShow); }

Additional query words: kbinf 1.00 2.00 2.10 2.20 4.00 1.50 PreCreateWindow CREATESTRUCT CChildFrame Maximized WS_MAXIMIZE Cs.style

Keywords: kbhowto kbuidesign kbdocview KB142317

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.