Функция CreateCompatibleDC создает контекст устройства в памяти (DC), совместимый с заданным устройством.
Синтаксис
HDC CreateCompatibleDC( HDC hdc // дескриптор DC ); |
hdc
[in] Дескриптор существующего контекста устройства (DC). Если этот дескриптор равен ПУСТО (NULL), функция создает контекст устройства в памяти, совместимый с текущим экраном приложения.Если функция завершается успешно, возвращаемое значение - дескриптор контекста устройства в памяти.
Если функция завершается ошибкой, возвращаемое значение - ПУСТО (NULL).
Windows NT/2000/XP: Чтобы получать дополнительные сведения об ошибке, вызовите функцию GetLastError.Контекст устройства (DC) в памяти существует только в памяти. Когда контекст устройства в памяти создается, его поверхность отображения равна точно одному монохромному пикселю шириной и одному монохромному пикселю высотой. Прежде, чем приложение может использовать контекст устройства в памяти для операций рисования, оно должно выбрать точечный рисунок правильной ширины и высоты в контекст устройства (DC). Чтобы выбирать точечный рисунок в контекст устройства, используйте функцию CreateCompatibleBitmap, задавая высоту, ширину и требуемую организацию окраски.
Когда контекст устройства (DC) в памяти создается, все атрибуты устанавливаются в обычные значения по умолчанию. Контекст устройства (DC) в памяти может быть использован как обычный контекст устройства (DC). Вы можете установить атрибуты; получить текущие параметры настройки его атрибутов; и выбрать перья, кисти и регионы (сложные области из любых фигур).
Функция CreateCompatibleDC может быть использована только устройствами, которые поддерживают растровые операции. Приложение может выяснить, поддерживает ли устройство эти операции, при помощи вызова функции GetDeviceCaps.
Когда Вы больше не нуждаетесь в контексте устройства (DC) в памяти, вызовите функцию DeleteDC.
Windows 2000 и позже: Если hdc равен ПУСТО (NULL), поток, который вызывает функцию CreateCompatibleDC владеет HDC (дескриптором DC), который создается. Когда этот поток разрушается, HDC больше не допустим. Таким образом, если Вы создаете HDC и передаете его в другой поток, тогда выйдите из программы первого потока, так как второй поток будет не в состоянии использовать HDC.
ICM: Если контекст устройства (DC), который передается в эту функцию, разрешает работу технологии Independent Color Management (ICM) - Независимого управления цветом, контекст устройства (DC), созданный этой функцией разрешает работу ICM. Исходные и принимающие цветовые пространства определяются в контексте устройства (DC).Пример смотри в статье Захват изображения.
Смотри также
Обзор Контексты устройства, Функции, используемые контекстами устройства, CreateCompatibleBitmap, DeleteDC, GetDeviceCaps
Размещение и совместимость CreateCompatibleDC |
|
Windows. NET Server |
Да |
Windows XP |
Да |
Windows 2000 |
Да |
Windows NT |
Да версии 3.1 и старше |
Windows Me |
Да |
Windows 98 |
Да |
Windows 95 |
Да |
Используемая библиотека |
Gdi32.lib |
Заголовочный файл |
|
- объявлено в |
Wingdi.h |
- включено в |
Windows.h |
Unicode |
Нет |
Замечания по платформе |
Не имеется |