CMultiDocTemplate::CMultiDocTemplate
Constrói um objeto de CMultiDocTemplate .
CMultiDocTemplate(
UINT nIDResource,
CRuntimeClass* pDocClass,
CRuntimeClass* pFrameClass,
CRuntimeClass* pViewClass
);
Parâmetros
nIDResource
Especifica a identificação dos recursos usados com o tipo de documento.Isso pode incluir o menu, o ícone, a tabela de aceleração, e recursos de cadeia de caracteres.O recurso de cadeia de caracteres que consiste em sete subcadeias de caracteres separadas pelo caractere ““\ n” caractere (\ n” é necessário como um suporte de localização se uma subcadeia de caracteres não é incluída; no entanto, os caracteres “\ n de arrasto” não são necessários;) essas subcadeias de caracteres descrevem o tipo de documento.Para obter informações sobre as subcadeias de caracteres, consulte CDocTemplate::GetDocString.Este recurso de cadeia de caracteres for encontrado no arquivo recurso do aplicativo.Por exemplo:
// MYCALC.RC
STRINGTABLE PRELOAD DISCARDABLE
BEGIN
IDR_SHEETTYPE "\nSheet\nWorksheet\nWorksheets (*.myc)\n.myc\n MyCalcSheet\nMyCalc Worksheet"
END
Observe que a cadeia de caracteres começa com o caractere “;” \ n isso ocorre porque a primeira substring não é usada para aplicativos MDI e portanto não é incluído.Você pode editar essa cadeia de caracteres usando o editor de cadeia de caracteres; a cadeia de caracteres inteira aparece como uma única entrada no editor de cadeia de caracteres, não como sete entradas separadas.
Para obter mais informações sobre esses tipos de recursos, consulte Editores de Recursos.
pDocClass
Os pontos ao objeto de CRuntimeClass de documento classe.Essa classe é CDocument- classe derivada que você define para representar os documentos.pFrameClass
Os pontos ao objeto de CRuntimeClass de quadro- janela classe.Essa classe pode ser CMDIChildWnd- a classe derivada, ou podem ser CMDIChildWnd próprio se você deseja o comportamento padrão para suas janelas de quadro chave do documento.pViewClass
Os pontos ao objeto de CRuntimeClass de exibição classe.Essa classe é CView- classe derivada que você define para exibir os documentos.
Comentários
Atributos dinamicamente um objeto de CMultiDocTemplate para cada tipo de documento que seus suporte do aplicativo e passe a cada um CWinApp::AddDocTemplate da função de membro de InitInstance de sua classe do aplicativo.
Exemplo
// 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)));
Aqui está um segundo exemplo.
// 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);
Requisitos
Cabeçalho: afxwin.h