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