Архитектура "документ-представление"
По умолчанию с помощью мастера приложений MFC создает схему приложения с классом документа и классом представления. MFC отделяет управление данными в эти 2 класса. Документ содержит данные и управлять выводом данных и координаты при обновлении нескольких представлений данных. Представление отображает данные и обеспечения работы пользователя с ним, включая выделение и редактирования.
В этой модели, объект документа MFC считывает и записывает данные в постоянное хранилище. Документ может реализовать интерфейс данные везде, где находится (например, в базе данных). Отдельный объект представления управляет отображением данных в обрабатывать в поле к выделению пользователя и изменения данных. Получает представление для отображения данных из документа и передает обратно на изменения любых данных документа.
Хотя можно легко переопределить или игнорировать разделение документов и представлений, серьезные причины для выполнить эту модель в большинстве случаев. Одно из лучше, если требуется несколько представлений одного документа, например и электронная таблица и представление диаграммы. Документ/модель представления позволяют отдельный объект представления представлять каждое представление данных, тогда как код общим для всех представлений (например, обработчик вычисления) может храниться в документе. Документ также принимает на задачу обновить все представления при изменении данных.
Архитектура документов и представлений MFC упрощает поддерживать несколько представлений, типы многооконного, окна-разделители и другие важные функции интерфейса пользователя.
Части платформы MFC самой видимой и пользователю и вам, программисту, документ и представление. Большая часть работы при разработке приложения с платформой переходит в писать классы документов и представлений. Это семейство описание статьи.
Цели документов и представлений и способов их взаимодействия в платформе.
Что необходимо сделать для их реализации.
Является ключевым элементом интерфейса документ/представление 4 два класса:
Класс CDocument (или COleDocument) поддерживает объекты, используемые для хранения или элемент управления данные программы и предоставляет основные функциональные возможности для программист- определенных классов документа. Документ представляет единицу данных, обычно пользователь открывает с открытой командой в меню и сохраняет Файл с командой в меню "Файл".
CView (или один из его многочисленных производных классов) предоставляет основные функциональные возможности для программист- определенных классов представления. Представление вложено в документ и действует как посредник между документом и пользователем. представление отображает изображение документа на экране и интерпретирует введенные пользователем данные как операции в документе. Представление также использует изображение как для печати, так и для предварительного просмотра.
CFrameWnd (или одного из его вариантов) поддерживает объекты, предоставляет кадр вокруг одного или нескольких представлений документа.
CDocTemplate ( CSingleDocTemplate или CMultiDocTemplate) поддерживает объект, координаты одного или нескольких существующих документов заданного типа и управляют создание правильные документ, представление и объекты фреймового окна для данного типа.
На следующем рисунке показана связь между документом и его представлением.
Документ и представление
Реализация документов и представлений в библиотеке классов отделяет данные от самого его отображения и из операций пользователя с данными. Все изменения данных управляемых через класс документа. Представление вызывает этот интерфейс для получения и обновления данных.
Документы, связанных с ними представления и фреймовые окна представления кадр, создают шаблоном документов. Шаблон документов отвечает за создание и управление все документы одного типа документа.
Дополнительные сведения
Классы документов и представлений, созданные мастером приложений
В качестве альтернативы архитектуры " документ-представление "
Инициализации и очистки для передачи документов и представлений
Инициализация собственные дополнения к классам & представления документа
Использование классов базы данных с документами и представлениями
Использование классов базы данных без документов и представлений
См. также
Основные понятия
Шаблоны документов и процесс создания документов и представлений
Создание документа или представления
Создание новых документов, окон и представлений