Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Func.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.58 Mб
Скачать

CView::OnDraw

virtual void OnDraw( CDC* pDC ) = 0;

Аргументы

  1. pDC — указатель на объект класса контекста устройства, используемого для отображения информации, хранящейся в документе.

Примечание

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

Данная функция должна перегружаться в каждом пользовательском классе представления. Передаваемый в качестве параметра функции объект класса CDC позволяет функции получить доступ к таким ресурсам GDI, как перья, шрифты и кисти. Вызов функции CDC::RectVisible позволяет сократить объём вычислений при рисовании за счёт отказа от рисования невидимых участков изображения. Значение, возвращаемое функцией CDC::IsPrinting, позволяет определить, будет ли данное изображение выводиться на принтер.

CView::OnInitialUpdate

virtual void OnInitialUpdate( );

Примечание

Данная функция вызывается приложением при первом связывании объекта представления с объектом документа до вывода этого объекта на экран. По умолчанию данная функция вызывает функцию OnUpdate с нулевыми первым и вторым аргументами. Перегрузка данной функции позволяет установить некоторые неизменные соотношения между документом и представлением. Например, если в приложении используются документы фиксированного размера, перегрузка данной функции позволит установить параметры прокрутки в окне, исходя из известных заранее размеров документа. Если в приложении используются документы различного размера, то эта операция должна производиться в функции OnUpdate.

CView::OnPrepareDc

virtual void OnPrepareDC( CDC* pDC, CPrintInfo* pInfo = NULL );

Аргументы

  1. pDC — указатель на объект класса контекста устройства, используемого для отображения документа.

  2. pInfo — указатель на объект структуры CPrintInfo, описывающей текущее задание печати, если функция OnPrepareDC используется для печати или предварительного просмотра печати документа. Переменная m_nCurPage данной структуры содержит номер печатаемой страницы документа. Если функция OnPrepareDC вызывается для вывода на экран, данный аргумент имеет нулевое значение.

Примечание

Вызывается приложением перед вызовом функции OnDraw при выводе на экран или перед функцией OnPrint перед печатью каждой станицы документа или её предварительным просмотром. По умолчанию данная функция не выполняет никаких действий при выводе изображения на экран. Однако, данная функция может быть перегружена в производных классах, таких как CScrollView, для настройки атрибутов контекста устройства. Поэтому при её перегрузке в пользовательских классах следует вызывать метод базового класса перед выполнением пользовательских операторов.

Если данная функция вызывается для печати документа, то по умолчанию она проверяет содержимое объекта структуры, на который указывает аргумент pInfo. Если размер документа в данном объекте структуры не задан, функция OnPrepareDC считает, что документ содержит всего одну страницу и останавливает процесс печати после распечатки первой страницы документа. Для остановки процесса печати данная функция присваивает переменной m_bContinuePrinting, являющейся членом структуры CPrintInfo, значение FALSE.

Обычно функция OnPrepareDC перегружается чтобы:

  • Установить атрибуты контекста устройства для указанной страницы при её печати. Например, в данной функции может быть установлен режим отображения.

  • Осуществить разбивку документа на страницы в процессе печати. Обычно, размер документа определяется при инициализации процесса его печати в функции OnPreparePrinting. Однако, в том случае, когда размер документа не может быть определён заранее (например, при печати неизвестного заранее числа записей базы данных), перегрузка функции OnPrepareDC позволяет проверять признак конца документа в процессе его печати. При достижении последней страницы документа данная функция присваивает переменной m_bContinuePrinting, являющейся членом структуры CPrintInfo, значение FALSE.

  • Посылать принтеру управляющие последовательности для его настройки на печать каждой страницы. Для посылки принтеру управляющих последовательностей вызовите функцию CDC::Escape для объекта класса, на который указывает аргумент pDC.

При перегрузке данной функции первым её оператором должен быть вызов метода базового класса.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]