Поделиться через


Функция CreateCompatibleDC (wingdi.h)

Функция CreateCompatibleDC создает контекст устройства памяти (DC), совместимый с указанным устройством.

Синтаксис

HDC CreateCompatibleDC(
  [in] HDC hdc
);

Параметры

[in] hdc

Дескриптор существующего контроллера домена. Если этот дескриптор имеет значение NULL, функция создает контроллер памяти, совместимый с текущим экраном приложения.

Возвращаемое значение

Если функция выполняется успешно, возвращаемое значение является дескриптором для контроллера домена памяти.

Если функция завершается сбоем, возвращается значение NULL.

Комментарии

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

При создании контроллера домена памяти всем атрибутам присваиваются обычные значения по умолчанию. Контроллер памяти может использоваться в качестве обычного контроллера домена. Можно задать атрибуты; получение текущих параметров его атрибутов; и выберите ручки, кисти и области.

Функцию CreateCompatibleDC можно использовать только с устройствами, поддерживающими растровые операции. Приложение может определить, поддерживает ли устройство эти операции, вызвав функцию GetDeviceCaps .

Если контроллер домена памяти больше не нужен, вызовите функцию DeleteDC . Мы рекомендуем вызвать DeleteDC , чтобы удалить контроллер домена. Однако вы также можете вызвать DeleteObject с HDC, чтобы удалить контроллер домена.

Если hdc имеет значение NULL, поток, вызывающий CreateCompatibleDC , владеет созданным HDC. При уничтожении этого потока HDC становится недействительным. Таким образом, если создать HDC и передать его в другой поток, а затем выйти из первого потока, второй поток не сможет использовать HDC.

ICM: Если контроллер домена, передаваемый в эту функцию, включен для управления цветом изображений (ICM), контроллер домена, созданный функцией, будет включен с поддержкой ICM. Исходные и целевые цветовые пространства указываются в контроллере домена.

Примеры

Пример см. в разделе Запись изображения.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header wingdi.h (включая Windows.h)
Библиотека Gdi32.lib
DLL Gdi32.dll

См. также раздел

CreateCompatibleBitmap

DeleteDC

Функции контекста устройства

Общие сведения о контекстах устройств

GetDeviceCaps