CView

Класс CView обеспечивает базовую функциональность для классов пользовательских представлений. Представление в приложении к документу и действует как посредник между документом и пользователя: мнение делает изображение документа на экран или принтер и интерпретирует ввода данных пользователем, как операции на основе документа.

Представление — дочернего фрейма окна. Более одного представления можно совместно использовать фрейм окна, как в случае окна разделителя. Отношения между класса view, класс дочернего фрейма окна и класс документа устанавливается объект CDocTemplate . Когда пользователь открывает новое окно или прерывает существующее, рамки создает новое представление и присоединяет его к документу.

Представление может быть присоединен к только одному документу, однако документ может иметь несколько представлений, прилагаемой к нему сразу — например, если документ отображается в окне разделителя или в нескольких дочерних окнах приложения с несколькими документами (MDI). Приложение может поддерживать различные типы представлений для типа данного документа; например текстовый процессор может предоставить представление полного текста документа и режим структуры, отображающее только заголовки разделов. Эти различные типы представлений могут быть помещены в отдельный фрейм windows или в отдельных областях одного фрейма окна если вы используете окно-разделитель.

Представление может быть ответственным за обработку несколько различных типов входных данных, таких как ввод с клавиатуры, ввод мыши или ввода через drag-and-drop, а также команды из меню, панели инструментов или полос прокрутки. Представление получает команды, представленную его фрейма окна. Если мнения не обрабатывает определенной команды, он перенаправляет команды для связанного с ним документа. Как все команды цели представление обрабатывает сообщения через схемы сообщений.

По мнению отвечает за отображение и изменение данных документа, но не для хранения его. В документе приводится мнение с необходимые подробности о своих данных. Вы можете разрешить доступ к мнению членов данных документа непосредственно, или вы может предоставить функции-члены в классе документа для представления класса для вызова.

При изменении данных документа, по мнению ответственных за эти изменения обычно вызывает функцию CDocument::UpdateAllViews для документа, который уведомляет все другие представления путем вызова функции-члена OnUpdate для каждого. Реализация по умолчанию OnUpdate опровергает мнение всю клиентскую область. Можно переопределить его недействительным только для тех областей клиентской области отображаемых измененных частей документа.

Чтобы использовать CView, производный класс от него и реализации функции-члена OnDraw для выполнения экрана дисплея. OnDraw можно также использовать для выполнения предварительного просмотра печати и печати. Framework обрабатывает печати петли для печати и предварительного просмотра документа.

Представление обрабатывает сообщения полоса прокрутки с функциями-членами CWnd::OnHScroll и CWnd::OnVScroll . Можно реализовать обработку в этих функций сообщений полосы прокрутки, или CView производный класс CScrollView можно использовать для обработки прокрутки для вас.

Кроме того CScrollView, библиотека классов Microsoft Foundation предоставляет девять классов, производных от CView:

Класс CView также имеет производный класс реализации с именем CPreviewView, который используется средой для выполнения предварительного просмотра печати. Этот класс предоставляет поддержку уникальных окно предварительного просмотра, такие как панель инструментов, одной или двойной страницы предварительного просмотра, возможностей и масштабирования, которая расширение просмотреть изображение. Вам не нужно позвонить или изменить любой из функций-членов CPreviewViewесли вы хотите реализовать собственный интерфейс для печати preview  (к примеру, если вы хотите поддержать редактирование в режиме предварительного просмотра). Для получения дополнительных сведений об использовании CView, см. Архитектуры документ/представление темы и печати в Visual C++ программист руководстве. Кроме того см. техническое примечание 30 для получения более подробной информации о настройке предварительного просмотра.

# include lt;afxwin.h>

Члены классаБазовый класс | Иерархическая схема

Образцыnbsp; Образца MFC HELLO | Образца MFC MDIBIND | Образца MFC MDIDOCVW

См. также CWnd, CFrameWnd, CSplitterWnd, CDC, CDocTemplate, CDocument

Index