CMultiDocTemplate::CMultiDocTemplate
Costruisce un oggetto CMultiDocTemplate.
CMultiDocTemplate(
UINT nIDResource,
CRuntimeClass* pDocClass,
CRuntimeClass* pFrameClass,
CRuntimeClass* pViewClass
);
Parametri
nIDResource
Specifica l'id delle risorse utilizzate dal tipo di documento. Potrebbe includere il menu, l'icona, la tabella dei tasti di scelta rapida e le risorse di tipo stringa.La risorsa di tipo stringa è costituito da un massimo di sette sottostringhe separate dal carattere "\ "n" carattere (\ n" necessario come supporto del posto se una sottostringa non è inclusa; tuttavia, i caratteri "\ n" di trascinamento non sono necessari); le sottostringhe descrivono il tipo di documento. Per informazioni sulle sottostringhe, vedere CDocTemplate::GetDocString. Questa risorsa di tipo stringa trovata nel file di risorse dell'applicazione. Di seguito è riportato un esempio:
// MYCALC.RC
STRINGTABLE PRELOAD DISCARDABLE
BEGIN
IDR_SHEETTYPE "\nSheet\nWorksheet\nWorksheets (*.myc)\n.myc\n MyCalcSheet\nMyCalc Worksheet"
END
Si noti che la stringa inizia con i caratteri "\ n"; questo perché la prima sottostringa non viene utilizzata per le applicazioni MDI e non è inclusa. È possibile modificare questa stringa utilizzando l'editor stringhe, l'intera stringa viene visualizzata come una singola voce nell'editor di stringhe, non come sette voci separate.
Per ulteriori informazioni su questi tipi di risorsa, vedere editor di risorse.
pDocClass
I punti all'oggetto CRuntimeClass di documento classe. Questa classe è CDocumentclasse derivata definito per rappresentare i documenti.pFrameClass
I punti all'oggetto CRuntimeClass della finestra cornice classe. Questa classe può essere CMDIChildWndnella classe derivata da, o può essere CMDIChildWnd stesso se si desidera che il comportamento predefinito per le applicazioni utilizzano il documento.pViewClass
Punti all'oggetto CRuntimeClass della classe di visualizzazione. Questa classe è CViewclasse derivata definito per visualizzare i documenti.
Note
Allocare dinamicamente un oggetto CMultiDocTemplate per ogni tipo di documento che i supporti di applicazione e sessione ciascun elemento a CWinApp::AddDocTemplate dalla funzione membro InitInstance dell'applicazione.
Esempio
// Code fragment from CMyApp::InitInstance
// Establish all of the document types
// supported by the application
AddDocTemplate(new CMultiDocTemplate(IDR_BRUSHDOCTYPE,
RUNTIME_CLASS(CBrushDoc),
RUNTIME_CLASS(CChildFrame),
RUNTIME_CLASS(CBrushView)));
AddDocTemplate(new CMultiDocTemplate(IDR_DCDOCTYPE,
RUNTIME_CLASS(CDCDoc),
RUNTIME_CLASS(CChildFrame),
RUNTIME_CLASS(CDCView)));
Di seguito è riportato un secondo esempio.
// Code fragment taken from CMyApp::InitInstance
// Normally, an application creates a document
// template and registers it with MFC as a part
// of its initialization.
// IDR_EXAMPLEDOCTYPE is a resource ID string; see
// the CDocTemplate class overview documentation
// for more information on its format.
// The next three parameters use the RUNTIME_CLASS()
// macro to get runtime type information for the doc,
// frame, and view classes that will be associated
// by the template.
pDocTemplate = new CMultiDocTemplate(IDR_EXAMPLEDOCTYPE,
RUNTIME_CLASS(CExampleDoc),
RUNTIME_CLASS(CChildFrame),
RUNTIME_CLASS(CExampleView));
if (!pDocTemplate)
return FALSE;
// After the following call, MFC is aware of the doc
// template and will free it when the application is
// shut down. The doc templates known to MFC will
// automatically be used when CWinApp:OnFileOpen()
// or CWinApp::OnFileNew() are called.
AddDocTemplate(pDocTemplate);
Requisiti
Header: afxwin.h