CMDIFrameWndEx::LoadMDIState
Carga el diseño especificado de grupos de MDI organización por fichas y la lista de documentos abiertos previamente.
virtual BOOL LoadMDIState(
LPCTSTR lpszProfileName
);
Parámetros
- [in] lpszProfileName
Especifica el nombre del perfil.
Valor devuelto
TRUE si la carga se realizó correctamente; FALSE si carga dio error o no hay ningún dato a cargar.
Comentarios
Para cargar o guardar el estado de las pestañas de MDI y grupos y la lista de documentos abiertos, haga lo siguiente:
Llame a CMDIFrameWndEx::SaveMDIState cuando se está cerrado el cuadro principal
Llame a CMDIFrameWndEx::LoadMDIState cuando se crea el marco principal. El lugar recomendado para esta llamada es antes del marco principal se muestra por primera vez. Agregue CWinAppEx::EnableLoadWindowPlacement(FALSE); antes de que pMainFrame->LoadFrame (IDR_MAINFRAME);. agregue CBCGPWorkspace::ReloadWindowPlacement(pMainFrame); después de la llamada a LoadMDIState para mostrar el cuadro principal en la posición que se almacenó en el registro.
Reemplace GetDocumentName en CMDIChildWndEx- clase derivada si la aplicación muestra los documentos que no se almacenan como archivos. La cadena devuelta se guardará en el registro como identificador del documento. La implementación base de CMDIChildWndEx::GetDocumentName devuelve un valor obtenido de CDocument::GetPathName.
Reemplazo CMDIFrameWndEx::CreateDocumentWindow correctamente para crear documentos cuando que se cargan del registro. El primer parámetro es la cadena que GetDocumentName devolvió.
Ejemplo
Las escrituras siguientes se muestra cómo LoadMDIState se utiliza en ejemplo de VisualStudioDemo: Aplicación MFC Visual Studio.
// Parse command line for standard shell commands, DDE, file open
CCommandLineInfo cmdInfo;
ParseCommandLine(cmdInfo);
if (cmdInfo.m_nShellCommand == CCommandLineInfo::FileNew)
{
if (!pMainFrame->LoadMDIState(GetRegSectionPath()))
{
m_pStartDocTemplate->OpenDocumentFile(NULL);
}
}
else
{
// Dispatch commands specified on the command line
if (!ProcessShellCommand(cmdInfo))
return FALSE;
}
Requisitos
encabezado: afxMDIFrameWndEx.h