Partager via


documents, vues, et l'infrastructure

Au cœur de l'infrastructure MFC sont les concepts du document et de la vue. Un document est un objet de données avec lequel l'utilisateur interagit dans une session d'édition. Il est créé par la commande New ou Open dans le menu File et est généralement stocké dans un fichier. (Les documents standard MFC, issus de la classe CDocument, sont différents des documents Active et des documents composés OLE.) Une vue est un objet fenêtre via lequel l'utilisateur interagit avec un document.

Les objets principaux dans une application active sont :

  • Le document ou les documents.

    Votre classe de document (dérivée de CDocument) spécifie les données d'application.

    Si vous souhaitez des fonctionnalités OLE dans votre application, dérivez la classe de document de COleDocument ou une de ses classes dérivées, selon le type de fonction dont vous avez besoin.

  • La vue ou les vues.

    La classe d'affichage (dérivée de CView) est la "fenêtre" de l'utilisateur sur les données. La classe d'affichage contrôle comment l'utilisateur voit les données de votre document et interagit avec. Dans certains cas, vous pouvez vouloir un document ayant plusieurs vues des données.

    Si vous avez besoin de faire défiler, dérivez de CScrollView. Si votre vue a une interface utilisateur qui présentée dans une ressource modèle de la boîte de dialogue, dérivez de CFormView. Pour les données de texte simple, utilisez ou dérivez de CEditView. Pour une application d'accès aux données de formulaire, par exemple un programme d'entrée de données, dérivez de CRecordView (pour ODBC). Également disponibles sont les classes CTreeView, CListView, et CRichEditView.

  • Les fenêtres cadres

    Les vues sont affichés dans "fenêtres cadres de document". Dans une application SDI, la fenêtre cadre de document correspond également à la fenêtre cadre « master » pour l'application. Dans une application MDI, les fenêtres de document sont des fenêtres enfants affichées à l'intérieur d'une fenêtre cadre principale. Votre classe dérivée de fenêtre cadre principale spécifie les styles et d'autres fonctionnalités des fenêtres cadres qui contiennent les vues. Si vous devez personnaliser des fenêtres cadres, dérivez de CFrameWnd pour personnaliser la fenêtre cadre de document pour les applications SDI. Dérivez de CMDIFrameWnd pour personnaliser la fenêtre cadre principale pour les applications MDI. Dérivez également une classe de CMDIChildWnd pour personnaliser chaque type distinct de fenêtre cadre de document MDI que votre application prend en charge.

  • Le modèle de document ou les modèles

    Un modèle de document orchestre la création des documents, des vues, et des fenêtres cadres. Une classe en particulier de modèle de document, dérivée de la classe CDocTemplate, crée et gère tous les documents ouverts d'un type. Les applications qui prennent en charge plusieurs types de documents ont plusieurs modèles de document. Utilisez la classe CSingleDocTemplate pour les applications SDI, ou la classe CMultiDocTemplate pour les applications MDI.

  • L'objet application

    La classe d'application (dérivée de CWinApp) contrôle les objets ci-dessus et spécifie le comportement d'application tel que l'initialisation et la destruction. Le seul et unique objet d'application de l'application crée et gère les modèles de document pour tout type de document pris en charge par l'application.

  • Objets thread

    Si votre application crée des threads séparés d'exécution (par exemple, pour effectuer des calculs en arrière-plan et utiliser les classes dérivées de CWinThread. CWinApp lui-même est dérivé de CWinThread et représente le thread principal de l'exécution (ou du processus principal) dans votre application. Vous pouvez également utiliser MFC dans les threads secondaires.

Dans une application active, ces objets répondent en coopération aux actions de l'utilisateur, liés par des commandes et d'autres messages. Un objet d'application gère un ou plusieurs modèles de document. Chaque modèle de document crée et gère un ou plusieurs documents (selon que l'application est SDI ou MDI). L'utilisateur voit et manipule un document dans une vue contenue dans une fenêtre cadre. L'illustration suivante montre les relations entre les objets pour une application SDI.

Objets dans une application SDI en cours d'exécution

Objets dans une application SDI en cours d'exécution

Le reste de cette famille d'articles explique comment les outils d'infrastructure, l'Assistant Application MFC et les éditeurs de ressources, comment créer ces objets, leur fonctionnement, ainsi que comment les utiliser dans votre code. Des documents, des vues, et des fenêtres cadres sont présentés plus en détail dans Objets fenêtres et Documents/Architecture des Vues.

Voir aussi

Concepts

Utilisation des classes pour écrire des applications pour Windows