Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Структура PAINTSTRUCT



Взаимодействие приложения с устройствами вывода информации осуществляется с помощью функций интерфейса графических устройств (Graphic Device Interface – GDI). При работе с этими функциями, будь то рисование линии или вывод текста на экран, приложение оперирует с неким стандартизированным описанием параметров устройства, так называемым контекстом устройства (Device Context – DC). Контекст устройства как структура данных автоматически создается системой и размещается в перемещаемом сегменте памяти. Для каждого окна необходимо иметь информацию о контексте устройства. Поэтому алгоритм вывода информации в рабочую область окна можно представить тремя действиями: запрос на создание контекста устройства, операция вывода, освобождение контекста устройства.

Если оконная процедура обрабатывает сообщение WM_PAINT, кроме контекста устройства необходимо получить адрес структуры данных PAINTSTRUCT. Сообщение WM_PAINT передается приложению тогда, когда необходимо перерисовать окно. Структура PAINTSTRUCT содержит информацию для перерисовки окна приложения и в файле win32.inc представлена следующим образом:

PAINTSTRUCT STRUC

PShdc UINT?

PSfErase UINT?

PSrcPaint UCHAR size RECT dup (?)

PSfRestore UINT?

PSfIncUpdate UINT?

PSrgbReserved UCHAR 16 dup(?)

PAINTSTRUCT ENDS

Тип UCHAR в файле win32.inc представлен как синоним DB.

Поле PShdc должно содержать дескриптор контекста устройства.

Поле PsfErase определяет, должен ли быть уничтожен фон. Содержимое этого поля отлично от нуля, если приложение уничтожает фон.

Поле PsrcPaint определяет структуру RECT, которая содержит информацию о верхнем левом и правом нижнем углах прямоугольника, который необходимо перерисовать.

Остальные поля зарезервированы для внутренних нужд Windows.






Дата публикования: 2015-10-09; Прочитано: 270 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...