Визуальное программирование и MFC



         

Класс окна просмотра документа


Следующим классом приложения multi является класс окна просмотра документа CMultiView. Этот класс наследуется от базового класса CView библиотеки MFC.

Окно просмотра и связанный с ним класс окна просмотра документа создается шаблоном документа в процессе работы приложения. Поэтому необходимо, чтобы объекты класса CMultiView можно было создавать динамически.

Для этого определяется конструктор класса, не имеющий параметров, а в определении класса указывается макрокоманда DECLARE_DYNCREATE, а в файле реализации - макрокоманда IMPLEMENT_DYNCREATE.

Класс CMultiView наследуется от базового класса CView. Однако, при необходимости, можно наследовать этот класс и от некоторых других классов библиотеки MFC.

Метод GetDocument. Этот метод возвращает указатель на документ, связанный с данным окном просмотра. Если окно просмотра не связано ни с каким документом, метод возвращает значение NULL.

Таблица сообщений класса CMultiView. Непосредственно перед таблицей сообщений класса CMultiView находится макрокоманда INPLEMENT_DYNCREATE. В таблице указываются обработчики сообщений от пунктов меню для печати ID_FILE_PRINT, ID_FILE_PRINT_DIRECT и ID_FILE_PRINT_PREVIEW.

Конструктор и деструктор класса CMultiView. Конструктор класса CMultiView, созданный MFC AppWizard, не содержит команд. Можно доработать его, чтобы конструктор выполнял инициализацию, связанную с окном просмотра.

Вместе с конструктором класса CMultiView MFC AppWizard определяет деструктор ~CMultiView. Сразу после создания проекта деструктор не выполняет никаких действий. В дальнейшем можно использовать его совместно с конструктором CMultiView.

Метод OnDraw. Это метод вызывается, когда надо отобразить документ в окне. В качестве параметра pDC методу OnDraw передается указатель на контекст устройства, используя который надо отобразить документ.

Методы OnPrepare, OnBeginPrinting и OnEndPrinting. Виртуальные методы OnPrepare, OnBeginPrinting и OnEndPrinting, определенные в классе CView, вызываются, если пользователь желает распечатать документ , отображенный в данном окне просмотра.

Методы AssertValid и Dump. На время отладки приложения в состав класса CMultiView включаются переопределения виртуальных методов AssertValid и Dump. Эти методы определены в базовом классе CObject и используются при отладке приложения. При окончательном построении приложения эти методы не переопределяются.




Содержание  Назад  Вперед