Partager via


CSingleDocTemplate::CSingleDocTemplate

Construit un objet CSingleDocTemplate.

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

Paramètres

  • nIDResource
    Spécifie l'ID les ressources utilisées par le type de document. Cela peut inclure le menu, l'icône, la table d'accélérateurs, et les ressources de type chaîne.

    La ressource de type chaîne se compose de jusqu'à sept sous-chaînes séparées par le caractère « « \ n » caractère (\ n » est nécessaire en tant qu'espace réservé si une sous-chaîne n'est pas inclus ; toutefois, les caractères « \ n » de fin ne sont pas nécessaires) ; les sous-chaînes décrivent le type de document. Pour plus d'informations sur les sous-chaînes, consultez CDocTemplate::GetDocString. Cette ressource de type chaîne est trouvée dans le fichier de ressources de l'application. Par exemple :

    // MYCALC.RC

    STRINGTABLE PRELOAD DISCARDABLE

    BEGIN

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

    END

    Vous pouvez modifier cette chaîne à l'aide de l'éditeur de chaînes ; la chaîne entière apparaît comme entrée unique dans l'Éditeur de chaînes, et non comme sept entrées distinctes.

    Pour plus d'informations sur ces types de ressources, consultez Éditeur de chaînes.

  • pDocClass
    Pointe vers l'objet d' CRuntimeClass de le fichier. Cette classe est CDocumentclasse dérivée que vous définissez pour représenter vos documents.

  • pFrameClass
    Pointe vers l'objet d' CRuntimeClass de la fenêtre frame classe. Cette classe peut être CFrameWnd- la classe dérivée, ou peut être CFrameWnd lui-même si vous souhaitez que le comportement par défaut pour votre fenêtre frame principale.

  • pViewClass
    Pointe vers l'objet d' CRuntimeClass de la classe d'affichage. Cette classe est CViewclasse dérivée que vous définissez pour consulter vos documents.

Notes

Allouez dynamiquement un objet d' CSingleDocTemplate et passez -la à CWinApp::AddDocTemplate de la fonction membre d' InitInstance de votre classe d'application.

Exemple

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

Configuration requise

Header: afxwin.h

Voir aussi

Référence

CSingleDocTemplate, classe

Graphique de la hiérarchie

CDocTemplate::GetDocString

CWinApp::AddDocTemplate

CWinApp::InitInstance

CRuntimeClass, structure

RUNTIME_CLASS