Функция 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 и ассоциации pszSubId List через время существования окна, даже если визуальные стили впоследствии изменяются. Окно отправляется WM_THEMECHANGED сообщение в конце вызова SetWindowTheme, чтобы найти и применить новый визуальный стиль.
Если pszSubAppName и pszSubIdListNULL, диспетчер тем удаляет ранее примененные связи. Вы можете запретить применение визуальных стилей к указанному окну, указав пустую строку (L"), которая не соответствует ни одному элементу раздела.
Примеры
В следующем примере кода предоставляется элемент управления представлением списка внешний вид списка Проводника Windows:
SetWindowTheme(hwndList, L"Explorer", NULL);
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows Vista [только классические приложения] |
минимальный поддерживаемый сервер | Windows Server 2003 [только классические приложения] |
целевая платформа | Виндоус |
заголовка | uxtheme.h |
библиотеки | UxTheme.lib |
DLL | UxTheme.dll |