Veröffentlicht 14. Februar 200322 j Hallo, ich habe per Einfügen->neues Formular meinem MFC-Projekt (MDI) ein neues Formular hinzugefügt. Wie kann ich nun ein solches Formular anzeigen lassen? Ich habe die Methode void CMainFrame::OnS() { CWinApp* pApp = AfxGetApp(); (CCryptoApp*)pApp; CDocManager *pDocMgr = pApp->m_pDocManager; POSITION TmplPos = pApp->GetFirstDocTemplatePosition(); CDocTemplate *pTmpl = pDocMgr->GetNextDocTemplate(TmplPos); CDocument *pDoc = pTmpl->CreateNewDocument(); } in der dies erfolgen soll. Aber mir wird kein Formular angezeigt Wer kann mir weiterhelfen? Grüße, Technician
14. Februar 200322 j Hi, also ich weiß es nicht so genau, aber müßte nicht, nachdem du pDoc den Zeiger auf dein neues Document zugewiesen hast, ein Aufruf kommen der sagt das das Document auch angezeigt werden soll? Da gibts doch UpdateAllViews(), versuch das mal. Gruß Guybrush
14. Februar 200322 j @Guybrush wenn ich UpdateAllViews aufrufe - passiert nix. ich hab jetzt gerade rausgefunden, dass folgendes funktioniert CWinApp* pApp = AfxGetApp(); (CCryptoApp*)pApp; CDocManager *pDocMgr = pApp->m_pDocManager; POSITION pos=pApp->GetFirstDocTemplatePosition(); CDocTemplate* pTemplate=pDocMgr->GetNextDocTemplate(pos); pTemplate->OpenDocumentFile(NULL); also praktisch genauso vorgehen wie beim Öffnen eines Dokuments - nur, dass als Pfad NULL übergeben wird. Ist das eine saubere Vorgehensweise (ich denke, nicht...)?! Gruß, Technician
14. Februar 200322 j Originally posted by Technician Ist das eine saubere Vorgehensweise (ich denke, nicht...)?! In der MSDN steht zu OpenDocumentFile folgendes: Opens the file whose pathname is specified by lpzsPathName. If lpszPathName is NULL, a new file, containing a document of the type associated with this template, is created. Also ich denke schon das, dass irgendwie so gedacht ist und man das ruhig so machen kann. Gruß Guybrush
14. Februar 200322 j Originally posted by Guybrush Threepwood In der MSDN steht zu OpenDocumentFile folgendes: Also ich denke schon das, dass irgendwie so gedacht ist und man das ruhig so machen kann. Gruß Guybrush na dann Danke!
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.