这个问题所涉及到的全部工作都发生在应用程序的InitInstance()函数中,下面的步骤中对此进行了解释。
在应用程序是InitInstance()函数中,做下面代码修改:
// 主框架窗口已经初始化,所以显示并更新它
//根据需要,在这里插入下列语句之一
//m_nCmdShow = SW_SHOWMAXIMIZED;
//m_nCmdShow = SW_SHOWMINIMIZED;
//m_nCmdShow = SW_SHOWNORMAL;
pMainFrame->ShowWindow(m_nCmdShow);
pMainFrame->UpdateWindow();
return TRUE;
}
解释:
还记得没有MFC时使用Windows编程的那些日子,那个时候只有最起码的SDK和可信任的C编译器可用。在那些日子里,程序通常以WinMain()函数开始,其原型如下:
Windows把nCmdShow参数递交给应用程序,以便应用程序决定主窗口的初始显示状态(普通、最大化、最小化)。大部分允许良好的应用程序简单的把这个参数传给ShowWindow()函数,以正确的状态初始化显示主窗口。
现在,不需要再自己书写WinMain()函数了,然而从某种意义上说,MFC在 应用程序对象中 保存了在其WinMain()函数中接收到的这个参数,所以可以在以后访问该参数。