Функция 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 |