Función SetWindowTheme (uxtheme.h)

Hace que una ventana use un conjunto diferente de información de estilo visual que su clase usa normalmente.

Sintaxis

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

Parámetros

[in] hwnd

Tipo: HWND

Controlar en la ventana cuya información de estilo visual se va a cambiar.

[in] pszSubAppName

Tipo: LPCWSTR

Puntero a una cadena que contiene el nombre de la aplicación que se va a usar en lugar del nombre de la aplicación que realiza la llamada. Si este parámetro es NULL, se usa el nombre de la aplicación que realiza la llamada.

[in] pszSubIdList

Tipo: LPCWSTR

Puntero a una cadena que contiene una lista separada por punto y coma de nombres CLSID que se van a usar en lugar de la lista real pasada por la clase de la ventana. Si este parámetro es NULL, se usa la lista de identificadores de la clase que realiza la llamada.

Valor devuelto

Tipo: HRESULT

Si esta función se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.

Comentarios

El administrador de temas conserva las asociaciones pszSubAppName y pszSubIdList durante la vigencia de la ventana, incluso si los estilos visuales cambian posteriormente. La ventana se envía un mensaje de WM_THEMECHANGED al final de una llamada SetWindowTheme , de modo que se pueda encontrar y aplicar el nuevo estilo visual.

Cuando pszSubAppName y pszSubIdList son NULL, el administrador de temas quita las asociaciones aplicadas anteriormente. Puede evitar que se apliquen estilos visuales a una ventana especificada especificando una cadena vacía (L"), que no coincide con ninguna entrada de sección.

Ejemplos

El código de ejemplo siguiente proporciona a un control de vista de lista la apariencia de una lista del Explorador de Windows:

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

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado uxtheme.h
Library UxTheme.lib
Archivo DLL UxTheme.dll