document/view -> 2 views auf das document

CiC

Grünschnabel
Hallo

Ich dachte eigentlich ich hätte das document/view Konstrukt der mfc verstanden, doch muss ich leider zugeben ich komme einfach nicht weiter. Es geht um eine "eigentlich" einfache Sache:

Ich habe ein CDocument in einer MDI Anwendung und möchte nun zwei unterschiedliche Views direkt am Anfang damit nutzen. Hat einer ein paar Hinweise dazu oder einen Link?

InitInstance()
Code:
	// Allgemeine Dokumentvorlage
	m_pDocTemplateData = new CMultiDocTemplate(IDR_MDI_TestTYPE,
		RUNTIME_CLASS(CMDI_TestDoc),
		RUNTIME_CLASS(CChildFrame), // Benutzerspezifischer MDI-Child-Rahmen
		RUNTIME_CLASS(CMDIView));

	if (!m_pDocTemplateData)
		return FALSE;

	AddDocTemplate(m_pDocTemplateData);

	m_pDocTemplateProt = new CMultiDocTemplate(IDS_STRING_PROT,
		RUNTIME_CLASS(CMDI_TestDoc),
		RUNTIME_CLASS(CChildFrame), // Benutzerspezifischer MDI-Child-Rahmen
		RUNTIME_CLASS(CMDIProtView));

	if (!m_pDocTemplateProt)
		return FALSE;
	AddDocTemplate(m_pDocTemplateProt);

für die beiden Views... doch wenn ich dann

Code:
::OnFileNew()
{
	if (m_pDocTemplateData != NULL || m_pDocTemplateProt != NULL)
	{
		m_pDocTemplateData->OpenDocumentFile(NULL);
		m_pDocTemplateProt->OpenDocumentFile(NULL);
	}
}

werden ja zwei unterschiedliche Dokumente des gleichen Typs aufgerufen.

Für irgendwelche Hinweise wäre ich seh dankbar.

Gruß
cic
 
Code:
::OnFileOpen()
{
	ASSERT(m_pDocTemplateData != NULL);
	ASSERT(m_pDocTemplateProt != NULL);
	m_pDocTemplateData->OpenDocumentFile("");
//	m_pDocTemplateProt->OpenDocumentFile("");

   // Zweiten Frame erstellen
    CDocument *pDoc = ((CFrameWnd*)m_pMainWnd)->GetActiveDocument();
    CFrameWnd *pCSecondFrame = m_pDocTemplateProt->CreateNewFrame(pDoc,NULL);

    // Zweiten Frame darstellen
    m_pDocTemplateProt->InitialUpdateFrame(pCSecondFrame,pDoc,TRUE);

}
So klappt zumindest die Anzeige ;P
 
Zurück