Функция SetWindowTheme (uxtheme.h)

Заставляет окно использовать набор сведений о стиле визуального элемента, отличный от того, который обычно использует его класс.

Синтаксис

HRESULT SetWindowTheme(
  [in] HWND    hwnd,
  [in] LPCWSTR pszSubAppName,
  [in] LPCWSTR pszSubIdList
);

Параметры

[in] hwnd

Тип: HWND

Дескриптор к окну, сведения о визуальном стиле которого необходимо изменить.

[in] pszSubAppName

Тип: LPCWSTR

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

[in] pszSubIdList

Тип: LPCWSTR

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

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

Тип: HRESULT

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

Комментарии

Диспетчер тем сохраняет связи pszSubAppName и pszSubIdList в течение всего времени существования окна, даже если стили визуальных элементов впоследствии изменяются. Окно отправляет WM_THEMECHANGED сообщение в конце вызова SetWindowTheme , чтобы можно было найти и применить новый визуальный стиль.

Если pszSubAppName и pszSubIdList имеют значение NULL, диспетчер тем удаляет ранее примененные связи. Вы можете запретить применение стилей визуальных элементов к указанному окну, указав пустую строку (L " "), которая не соответствует ни одной записи раздела.

Примеры

В следующем примере кода элементу управления представлением списка предоставляется внешний вид списка Обозреватель Windows:

SetWindowTheme(hwndList, L"Explorer", NULL);

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header uxtheme.h
Библиотека UxTheme.lib
DLL UxTheme.dll