Dokument-/Ansichtarchitektur
Standardmäßig erstellt der MFC-Anwendungs-Assistent ein skelett Anwendung mit einer Dokumentklasse und einer Ansichtsklasse.MFC trennt Datenverwaltung in diese beiden Klassen.Archiv die Daten und verwaltet das Drucken der Daten und koordiniert das Aktualisieren von mehreren Ansichten der Daten.Die Ansicht zeigt die Daten an und verwaltet die Benutzerinteraktion damit, einschließlich Auswahl und Bearbeiten.
In diesem Modell liest ein MFC-Dokumentobjekt und schreibt die Daten in den permanenten Speicher.Das Dokument enthält möglicherweise auch eine Schnittstelle für Daten bereit, auf dem er sich befindet (z. B. in eine Datenbank.)Ein separates Ansichtsobjekt verwalteten Datenanzeige, aus dem Rendern der Daten in einem Fenster auf die Benutzerauswahl und Bearbeitung von Daten.Die Ansicht erhält Anzeigen von Daten aus dem Dokument und teilt dem Dokument wieder alle Datenänderungen an.
Während Sie das Dokument/Ansichts-Trennung leicht überschreiben oder ignorieren können, gibt es zwingende Gründe diesem Modell in den meisten Fällen befolgen.Eines der Besten ist, wenn Sie mehrere Ansichten desselben Dokuments, z. B. ein Arbeitsblatt und eine Diagrammansicht erfordern.Das Dokument/Ansichts-Modell können ein separates Ansichtsobjekt jede Ansicht der Daten darstellen, während ein (z. B. Common allen Code Modul Berechnung) kann im Dokument befinden anzeigt.Das Dokument nimmt auch in der Aufgabe der Aktualisierung aller Ansichten, wenn die Daten geändert werden.
Die MFC-Dokument-/Ansichtsarchitektur erleichtert es, mehrere Ansichten, mehrere Dokumenttypen, Splitterfenster und weitere wertvolle Funktionen für die Benutzeroberfläche zu unterstützen.
Die Teile des MFC-Frameworks sichtbarsten dem Benutzer, und der Programmierer, werden das Dokument und die Ansicht.Die meiste Arbeit, wenn es eine Anwendung mit dem Framework entwickelt, wechselt das Schreiben des Dokuments und Ansichtsklassen ein.Diese Artikel beschriebenen Adressfamilie:
Die Zwecke der Dokumente und Ansichten und wie sie im Framework interagieren.
Mögliche Aktionen ausführen müssen, um sie zu implementieren.
Im Wesentlichen aus dem Dokument/Ansicht sind vier Hauptklassen:
Die Klasse CDocument (oder COleDocument) unterstützt die Objekte, die verwendet werden, um die Daten des Programms zu speichern oder zu steuern und stellt die Grundfunktionen für Programmierer-definierte Dokumentklassen bereit.Ein Dokument stellt die Einheit von Daten, die vom Benutzer in der Regel mit dem Befehl Öffnen im Menü Datei geöffnet und mit dem Befehl Speichern unter im Menü Datei auf Speichern.
CView (oder eine der vielen abgeleiteten Klassen) stellt die Grundfunktionen für Programmierer-definierte Ansichtsklassen bereit.Eine Sicht ist an ein Dokument angefügt und fungiert als Mittler zwischen dem Dokument und dem Benutzer angezeigt: Ansicht rendert ein Bild des Dokuments auf dem Bildschirm und interpretiert Benutzereingaben als Vorgänge nach dem Dokument.Die Ansicht rendert zudem das Bild für Belastungs- und Seitenansicht.
CFrameWnd (oder eine der Varianten) unterstützt Objekten, die die Rahmen um eine oder mehrere Ansichten eines Dokuments zur Verfügung stellt.
CDocTemplate (oder CSingleDocTemplate oder CMultiDocTemplate) unterstützt ein Objekt, das mindestens ein vorhandener Dokumente eines bestimmten Typs koordiniert und zum Erstellen des richtigen Dokuments, der Ansicht und der Rahmenfenster Objekte für diesen Typ verwaltet.
Die folgende Abbildung zeigt die Beziehung zwischen einem Dokument und einer Ansicht an.
Dokument und Ansicht
Die Dokument/Ansichts-Implementierung in der Klassenbibliothek trennt die Daten selbst aus seiner Anzeige und Teilnehmerbetrieben für die Daten.Alle Änderungen an den Daten werden durch die Dokumentklasse verwaltet.Die Ansicht wird diese Schnittstelle auf, um die Daten zuzugreifen und zu aktualisieren.
Dokumente, die ihnen zugeordneten Ansichten und Rahmenfenster, die Frames die Ansichten durch eine Dokumentvorlage erstellt werden.Die Dokumentvorlage ist für das Erstellen und Verwalten aller Dokumente eines Dokumenttyps verantwortlich.
Worüber möchten Sie mehr erfahren?
Dokument und Ansichtsklassen im Anwendungs-Assistenten erstellte
Mehrfachverbindungsstellen-Ansichten zu einem einzelnen Dokument hinzu
Initialisieren Sie eigene Zusätze zum Dokument an die Ansichtsklassen.
Siehe auch
Konzepte
Dokumentvorlagen und der Dokument/Ansichts-Erstellungs-Prozess
Erstellen von neuen Dokumenten, Fenstern und Ansichten