Partilhar via


CMultiDocTemplate::CMultiDocTemplate

Constrói um CMultiDocTemplate objeto.

CMultiDocTemplate(
   UINT nIDResource,
   CRuntimeClass* pDocClass,
   CRuntimeClass* pFrameClass,
   CRuntimeClass* pViewClass 
);

Parâmetros

  • nIDResource
    Especifica a ID de recursos usado com o tipo de documento.Isso pode incluir o menu, ícone, tabela de acelerador e recursos de seqüência de caracteres.

    O recurso de cadeia de caracteres consiste em até sete substrings separados pelo caractere '\n' (o caractere '\n' é necessário sistema autônomo um espaço reservado se uma subseqüência não está incluída; no entanto, à direita '\n' caracteres não são necessários); esses substrings descrevem o tipo de documento.Para obter informações sobre as subseqüências, consulte CDocTemplate::GetDocString.Esse recurso de cadeia de caracteres for encontrado no arquivo de 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 seqüência de caracteres começa com um caractere '\n'; isso ocorre porque a primeira substring não é usada para aplicativos MDI e, portanto, não está incluído.Você pode edição essa seqüência de caracteres usando o editor de seqüência de caracteres; toda a seqüência de caracteres aparece sistema autônomo uma única entrada no Editor de String, não sistema autônomo sete entradas separadas.

    Para obter mais informações sobre esses tipos de recursos, consulte Editores de recursos.

  • pDocClass
    Aponta para o CRuntimeClass objeto da classe do documento. Essa classe é um CDocument-você define para representar seus documentos de classe derivada.

  • pFrameClass
    Aponta para o CRuntimeClass objeto da classe de janela do quadro. Essa classe pode ser um CMDIChildWnd-classe derivada ou pode ser CMDIChildWnd si mesmo se você desejar o comportamento padrão para suas janelas de quadro do documento.

  • pViewClass
    Aponta para o CRuntimeClass objeto da classe de modo de exibição. Essa classe é um CView-definir para exibir os documentos de classe derivada.

Comentários

Alocar dinamicamente um CMultiDocTemplate objeto para cada tipo de documento que seu aplicativo suporta e passar a cada um CWinApp::AddDocTemplate do InitInstance função de membro de sua classe de 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)));

Este é um exemplo de segundo.

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

Consulte também

Referência

Classe CMultiDocTemplate

Gráfico de hierarquia

CDocTemplate::GetDocString

CWinApp::AddDocTemplate

CWinApp::InitInstance

Estrutura CRuntimeClass

Outros recursos

CMultiDocTemplate membros