Freigeben über


CMDIFrameWndEx::LoadMDIState

Lädt das angegebene Layout von MDI mit den versehenen Gruppen und eine Liste der zuvor geöffneten Dokumenten.

virtual BOOL LoadMDIState(
   LPCTSTR lpszProfileName 
);

Parameter

  • [in] lpszProfileName
    Gibt den Profilnamen an.

Rückgabewert

TRUE, wenn die Auslastung erfolgreich war; FALSE, wenn die Auslastung oder dort fehlgeschlagen ist, keine ist, Daten zu laden.

Hinweise

Um den Zustand von MDI-Registerkarten und Gruppen und Liste der geöffneten Dokumenten zu laden oder zu speichern, gehen Sie wie folgt vor:

  • Rufen Sie CMDIFrameWndEx::SaveMDIState auf, wenn der Hauptframes geschlossen wird

  • Rufen Sie CMDIFrameWndEx::LoadMDIState auf, wenn der Hauptframes erstellt wird. Der empfohlene Platz für diesen Aufruf ist, bevor der Hauptframes zum ersten Mal angezeigt wird. Fügen Sie CWinAppEx::EnableLoadWindowPlacement(FALSE); hinzu, bevor pMainFrame->LoadFrame (IDR_MAINFRAME);.CBCGPWorkspace::ReloadWindowPlacement(pMainFrame); nach dem Aufruf LoadMDIState hinzufügen, um den Hauptframes in der Position anzuzeigen, die in der Registrierung gespeichert wurde.

  • Überschreiben Sie GetDocumentName in CMDIChildWndEx von abgeleitete Klasse, wenn die Anwendung Dokumente anzeigt, die nicht als Dateien gespeichert sind. Die zurückgegebene Zeichenfolge ist in der Registrierung als der Dokumentenbezeichner gespeichert. Die Basisimplementierung von CMDIChildWndEx::GetDocumentName gibt einen Wert von abgerufenen CDocument::GetPathName zurück.

  • Überschreiben CMDIFrameWndEx::CreateDocumentWindow, um von Dokumenten ordnungsgemäß zu erstellen, wenn sie aus der Registrierung geladen werden. Der erste Parameter ist die Zeichenfolge, die GetDocumentName zurückgegeben hat.

Beispiel

Im folgenden Beispiel wird gezeigt, wie LoadMDIState in VisualStudioDemo-Beispiel: MFC-Visual Studio-Anwendung verwendet wird.

   // 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;
    }

Anforderungen

Header: afxMDIFrameWndEx.h

Siehe auch

Referenz

CMDIFrameWndEx-Klasse

Hierarchiediagramm