How to Create a Minimized/Maximized MDI Child WindowID: Q142317
|
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.
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.
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
Keywords : kbcode kbDocView kbMFC kbVC
Version : 1.00 1.50 1.51 1.52 | 1.00 2.00
Platform : NT WINDOWS
Issue type :
Last Reviewed: August 3, 1999