Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lutsik_Yu_A_Obektno_orientir_programmir_na_yaz.pdf
Скачиваний:
63
Добавлен:
11.05.2015
Размер:
4.33 Mб
Скачать

11.2. Управление графическим выводом

Одна из главных особенностей Win32 API − независимость графического вывода от устройства. Windows включает в себя язык графического программи- рования, называемый графическим интерфейсом устройства (Graphics Device Interface, GDI), который облегчает создание графики и форматированного тек- ста. Windows абстрагируется от конкретного устройства отображения информа- ции. Программы, написанные для Windows, будут работать с любым типом дисплея и принтера, для которых имеется драйвер Windows. В программе нет необходимости задавать тип используемого в системе оборудования.

11.3. Контекст устройства

 

Контекст устройства структура, определяющая набор графических объ-

ектов и связанных с ними атрибутов и графических режимовР. Приложение не

 

 

У

имеет прямого доступа к контексту устройства, настройка этой структуры осу-

 

 

Г

ществляется посредством вызова соответствующих функцийИWin32 API.

Win32 API определяет четыре типа контекстов устройств: экран, принтер,

объект в памяти и информационный.

 

11.3.1. Экран

ипа

Win32 API обеспечивает три т

контекстаБустройства: контекст класса,

 

к

л сса и частный контексты устройства

общий и частный контексты. Конте ст

используются в приложенияхе, оторые выполняют много операций рисования.

Общие контексты устройства используются в приложениях, которые редко вы-

полняют операции рисования.

Приложение получ

кон кст экрана, вызывая функции BeginPaint или

он

 

GetDC и идентифицируя окно вывода информации. Тип контекста устройства

зависит от того, как прил жение зарегистрировало класс окна. После заверше-

 

 

 

и

еаетпосредством вывода функций EndPaint или RealeaseDC

ния вывода пр л же

 

 

л

текст устройства.

должно освобод ть к

 

Контекст к асса поддерживается только для совместимости с предыду-

 

б

 

 

щими версиями ОС Windows. В приложениях Win32 следует использовать ча-

и

 

 

 

стные контексты.

 

Б

О щий контекст − контекст устройства экрана, связанный с контекстом

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

Частные контексты отличаются от общих тем, что сохраняют любые из-

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

245

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