Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Контексты устройств




Контекст устройства (Device Context) – некоторое логическое представление физического устройства (экрана монитора, принтера, и т.д.). Контекст устройства – это внутренняя структура, для управления информацией о выходном устройстве. Она содержит информацию о параметрах и атрибутах («перо», «кисть», шрифт и др.) вывода графики на устройство (например, дисплей или принтер). Вместо направления вывода непосредственно на аппаратное устройство, приложение направляет его в контекст устройства, а затем Windows пересылает вывод в аппаратное устройство.

Типы контекстов устройств:

– контекст дисплея;

– контекст принтера;

– контекст в памяти (моделирует в памяти устройство вывода);

– информационный контекст (служит для получения данных от устройства).

Заголовки функции для получения контекста устройств (в программе используются хэндлы контекстов устройств - HDC):

HDC GetDC(HWND hWnd);

HDC BeginPaint(HWND hWnd, LPPAINTSTRUCT lpPaint);

Освобождение контекста устройств:

int ReleaseDC(HWND hWnd, HDC hDC);

BOOL EndPaint(HWND hWnd, CONST PAINTSTRUCT *lpPaint);

 

Графические «перья» и «кисти»

Заголовок функции для получения предопределенных «перьев» или «кистей»:

HGDIOBJ GetStockObject(int);

Возможные параметры:

Для «перьев»:

WHITE_PEN, BLACK_PEN, NULL_PEN

Для «кистей»:

WHITE_BRUSH, LTGRAY_BRUSH, GRAY_BRUSH, DKGRAY_BRUSH, BLACK_BRUSH, NULL_BRUSH

Заголовок функции для создания «пера»:

HPEN CreatePen(int, int, COLORREF);

Первый параметр определяет стиль, возможные значения (заданы константами в заголовочных файлах):

PS_SOLID /* ______ */

PS_DASH /* ------- */

PS_DOT /*....... */

PS_DASHDOT /* _._._._ */

PS_DASHDOTDOT /* _.._.._ */

PS_NULL

Второй параметр определяет толщину.

Третий параметр определяет цвет, для получения цвета можно использовать макрос:

RGB(r,g,b)

он возвращает тип объявленный как

typedef DWORD COLORREF;

Заголовок функции для создания сплошной «кисти»:

HBRUSH CreateSolidBrush(COLORREF);

Заголовок функции для создания «кисти» с заданным стилем:

HBRUSH CreateHatchBrush(int, COLORREF);

Первый параметр определяет стиль, возможные значения, определенные в заголовочных файлах:

HS_HORIZONTAL /* ----- */

HS_VERTICAL /* || */

HS_FDIAGONAL /* \\\\\ */

HS_BDIAGONAL /* ///// */

HS_CROSS /* +++++ */

HS_DIAGCROSS /* xxxxx */

Заголовок функции для загрузки «пера» или «кисти» в контекст устройства:

HGDIOBJ SelectObject(HDC, HGDIOBJ);

После работы с объектами («пером» и «кистью») их необходимо удалить, заголовок функции для удаления имеет вид:

BOOL DeleteObject(HGDIOBJ);





Поделиться с друзьями:


Дата добавления: 2015-10-01; Мы поможем в написании ваших работ!; просмотров: 410 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

80% успеха - это появиться в нужном месте в нужное время. © Вуди Аллен
==> читать все изречения...

2241 - | 2105 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.01 с.