Функция GetWindowDC (winuser.h)
Функция GetWindowDC извлекает контекст устройства (DC) для всего окна, включая строку заголовка, меню и полосы прокрутки. Контекст устройства окна позволяет рисовать в любом месте окна, так как источником контекста устройства является верхний левый угол окна, а не клиентская область.
GetWindowDC назначает атрибуты по умолчанию контексту устройства окна каждый раз при извлечении контекста устройства. Предыдущие атрибуты теряются.
Синтаксис
HDC GetWindowDC(
[in] HWND hWnd
);
Параметры
[in] hWnd
Дескриптор окна с контекстом устройства, который требуется извлечь. Если это значение равно NULL, GetWindowDC извлекает контекст устройства для всего экрана.
Если этот параметр имеет значение NULL, GetWindowDC извлекает контекст устройства для основного монитора дисплея. Чтобы получить контекст устройства для других мониторов дисплея, используйте функции EnumDisplayMonitors и CreateDC .
Возвращаемое значение
Если функция выполняется успешно, возвращаемое значение является дескриптором контекста устройства для указанного окна.
Если функция завершается сбоем, возвращается значение NULL, указывающее на ошибку или недопустимый параметр hWnd .
Комментарии
GetWindowDC предназначен для специальных эффектов рисования в неклиентной области окна. Рисование в неклиентных областях любого окна не рекомендуется.
Функцию GetSystemMetrics можно использовать для получения измерений различных частей неклиентской области, таких как строка заголовка, меню и полосы прокрутки.
Функцию GetDC можно использовать для получения контекста устройства для всего экрана.
После завершения рисования необходимо вызвать функцию ReleaseDC , чтобы освободить контекст устройства. Отсутствие освобождения контекста оконного устройства оказывает серьезное влияние на рисование, запрошенное приложениями.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | winuser.h (включая Windows.h) |
Библиотека | User32.lib |
DLL | User32.dll |
Набор API | ext-ms-win-ntuser-draw-l1-1-0 (представлено в Windows 8) |