Compartir a través de


CSingleDocTemplate::CSingleDocTemplate

Crea un objeto CSingleDocTemplate.

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

Parámetros

  • nIDResource
    Especifica el identificador de recursos utilizados con el tipo de documento. Esto puede incluir el menú, el icono, la tabla de aceleradores, y recursos de cadena.

    El recurso de cadena consta de hasta siete subcadenas separadas por “\ carácter n” carácter (“\ n” se necesita como marcador si una subcadena no se incluye; sin embargo, n que se arrastran “\ caracteres” no sea necesario); estas subcadenas describen el tipo de documento. Para obtener información sobre las subcadenas, vea CDocTemplate:: GetDocString. Encuentran a este recurso de cadena en el archivo de recursos de la aplicación. Por ejemplo:

    // MYCALC.RC

    STRINGTABLE PRELOAD DISCARDABLE

    BEGIN

    IDR_MAINFRAME "MyCalc Windows Application\nSheet\nWorksheet\n Worksheets (*.myc)\n.myc\nMyCalcSheet\n MyCalc Worksheet"

    END

    Puede modificar esta cadena mediante el editor de cadenas; la cadena completa aparece como una sola entrada en el Editor de cadenas, no como siete entradas independientes.

    Para obtener más información sobre estos tipos de recursos, vea Editor de cadenas.

  • pDocClass
    Señala al objeto de CRuntimeClass de la clase del documento. Esta clase es CDocument- clase derivada que se define para representar los documentos.

  • pFrameClass
    Señala al objeto de CRuntimeClass de la clase de ventana de marco. Esta clase puede ser CFrameWnd- la clase derivada, o puede ser CFrameWnd propio si desea el comportamiento predeterminado de la ventana de marco principal.

  • pViewClass
    Señala al objeto de CRuntimeClass de la clase de vista. Esta clase es CView- clase derivada que se define para mostrar documentos.

Comentarios

Asigna dinámicamente un objeto de CSingleDocTemplate y páselo a CWinApp::AddDocTemplate de funciones miembro de InitInstance de clase de aplicación.

Ejemplo

// The following code fragment is from CMyWinApp::InitInstance. 
// CMyWinApp is derived from CWinApp. 

// Establish the document type 
// supported by the application
AddDocTemplate(new CSingleDocTemplate(IDR_MAINFRAME,
   RUNTIME_CLASS(CMyDoc),
   RUNTIME_CLASS(CMainFrame),       // main SDI frame window
   RUNTIME_CLASS(CMyView)));
// The following code fragment is from CMyWinApp::InitInstance. 
// CMyWinApp is derived from CWinApp. 

// Normally, an application creates a document 
// template and registers it with MFC as a part 
// of its initialization. 

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

CSingleDocTemplate* pDocTemplate;
pDocTemplate = new CSingleDocTemplate(IDR_MAINFRAME,
   RUNTIME_CLASS(CMyDoc),
   RUNTIME_CLASS(CMainFrame),       // main SDI frame window
   RUNTIME_CLASS(CMyView));
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

encabezado: afxwin.h

Vea también

Referencia

CSingleDocTemplate Class

Gráfico de jerarquías

CDocTemplate::GetDocString

CWinApp::AddDocTemplate

CWinApp::InitInstance

CRuntimeClass Structure

RUNTIME_CLASS