Partager via


Création de nouveaux documents, fenêtres et vues

Les illustrations suivantes donnent une vue d’ensemble du processus de création pour les documents, les vues et les fenêtres à cadres. D’autres articles qui se concentrent sur les objets participants fournissent des détails supplémentaires.

Une fois ce processus terminé, les objets coopérants existent et stockent des pointeurs les uns vers les autres. Les illustrations suivantes montrent la séquence dans laquelle les objets sont créés. Vous pouvez suivre la séquence d'une figure à l'autre.

Diagramme montrant la séquence de création d’un document.
Séquence dans la création d’un document

Diagramme montrant la séquence de création de fenêtre frame.
Séquence dans la création d’une fenêtre à cadre

Diagramme montrant la séquence de création d’une vue.
Enchaînement des étapes pour créer une vue

Pour plus d’informations sur la façon dont l’infrastructure initialise les nouveaux objets de document, d’affichage et de fenêtre frame, consultez les classes CDocument, CView, CFrameWnd, CMDIFrameWnd et CMDIChildWnd dans la référence de la bibliothèque MFC. Consultez également la note technique 22, qui explique les processus de création et d’initialisation plus loin dans sa discussion sur les commandes standard du framework pour les éléments Nouveau et Ouvrir dans le menu Fichier .

Initialisation de vos propres ajouts à ces classes

Les illustrations précédentes indiquent également les points auxquels vous pouvez remplacer les fonctions membres pour initialiser les objets de votre application. Le remplacement de OnInitialUpdate dans votre classe de vue est le meilleur endroit pour initialiser la vue. L’appel OnInitialUpdate se produit immédiatement après la création de la fenêtre de cadre et la vue au sein de la fenêtre de cadre est attachée à son document. Par exemple, si votre vue est une vue de défilement (dérivée de CScrollView plutôt que CView), vous devez définir la taille de la vue en fonction de la taille du document dans votre surcharge OnInitialUpdate. (Ce processus est décrit dans la description de la classe CScrollView.) Vous pouvez remplacer les fonctions membres CDocument, OnNewDocument et OnOpenDocument pour fournir une initialisation spécifique à l'application du document. En règle générale, vous devez remplacer les deux, car un document peut être créé de deux manières.

Dans la plupart des cas, votre remplacement doit appeler la version de la classe de base. Pour plus d’informations, consultez les fonctions membres nommées des classes CDocument, CView, CFrameWnd et CWinApp dans la référence de la bibliothèque MFC.

Voir aussi

Modèles de document et processus de création de document/affichage
Création d’un modèle de document
Création de documents/affichages
Relations entre les objets MFC