Функция DrawThemeBackground (uxtheme.h)
Рисует границу и заливку, определяемую визуальным стилем для указанной части элемента управления.
Синтаксис
HRESULT DrawThemeBackground(
[in] HTHEME hTheme,
[in] HDC hdc,
[in] int iPartId,
[in] int iStateId,
[in] LPCRECT pRect,
[in] LPCRECT pClipRect
);
Параметры
[in] hTheme
Тип: HTHEME
Обработка данных указанной темы окна. Используйте OpenThemeData для создания HTHEME.
[in] hdc
Тип: HDC
HDC используется для рисования фонового изображения, определенного темой.
[in] iPartId
Тип: int
Значение типа int , указывающее часть для рисования. См. раздел Части и состояния.
[in] iStateId
Тип: int
Значение типа int , указывающее состояние рисуемой части. См. раздел Части и состояния.
[in] pRect
Тип: const RECT*
Указатель на структуру RECT , содержащую прямоугольник в логических координатах, в которых рисуется фоновое изображение.
[in] pClipRect
Тип: const RECT*
Указатель на структуру RECT , содержащую прямоугольник обрезки. Для этого параметра может быть задано значение NULL.
Возвращаемое значение
Тип: HRESULT
Если эта функция выполняется успешно, она возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
Операции рисования масштабируются по размеру и не превышают прямоугольник, указанный в pRect. Приложение не должно рисовать за пределами прямоугольника, указанного в pClipRect.
Примеры
Перед вызовом Метода DrawThemeBackground для рисования фонового изображения для окна можно вызвать Метод IsThemeBackgroundPartiallyTransparent. Этот метод определяет, следует ли вызывать DrawThemeParentBackground для рисования фона за частично прозрачными или альфа-смешанными дочерними элементами управления, и показан в следующем примере.
if (_hTheme)
{
if (IsThemeBackgroundPartiallyTransparent(_hTheme, BP_PUSHBUTTON, _iStateId))
{
DrawThemeParentBackground(_hwnd, hdcPaint, prcPaint);
}
DrawThemeBackground(_hTheme,
hdcPaint,
BP_PUSHBUTTON,
_iStateId,
&rcClient,
prcPaint);
}
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | uxtheme.h |
Библиотека | UxTheme.lib |
DLL | UxTheme.dll |