Uso de subclases de tema

Las clases de tema que representan controles como ComboBox, Edit, ExplorerBar, Rebar, Tab y Toolbar se pueden subclasificar para proporcionar variaciones de tema para ese control determinado. Por ejemplo, la clase Button se subclase como Start::Button para proporcionar control sobre el tema aplicado al botón Iniciar .

Nota

Tenga cuidado al crear subclases como las que se describen en este tema. Dado que las subclases pueden modificarse o no estar disponibles en versiones posteriores de Windows, no se recomienda usarlas.

 

Dos maneras de usar una subclase de temas

Una aplicación puede usar un tema con subclases de una de estas dos maneras:

  • Puede usar la función OpenThemeData con una cadena del formulario subclass::class en el parámetro pszClassList .
  • Puede llamar a SetWindowTheme con el nombre de la subclase de tema en el parámetro pszSubAppName .

Usar mensajes de tema que establecen el estilo visual

Algunos controles, como La barra de herramientas y la barra de herramientas, proporcionan mensajes específicos que puede enviar para indicar al control que use una subclase de temas. Para esos controles, proporcione un puntero a un búfer que contenga el nombre de la subclase de tema en el parámetro lParam del mensaje. Use el mensaje de CCM_SETWINDOWTHEME genérico o use una variante específica como las que se muestran en la tabla siguiente.

Control Message
Información sobre herramientas TTM_SETWINDOWTHEME
Barra de herramientas TB_SETWINDOWTHEME
Rebar RB_SETWINDOWTHEME
ComboBoxEx CBEM_SETWINDOWTHEME

 

En la tabla siguiente se enumeran algunas de las subclases que Define Windows Vista.

Clase Subclases
ComboBox
  • Dirección
  • AddressComposited
  • InactivoAddress
  • InactivoAddressComposited
  • MaxAddress
  • MaxAddressComposited
  • MaxInactiveAddress
  • MaxInactiveAddressComposited
Editar
  • Dirección
  • AddressComposited
  • InactivoAddress
  • InactivoAddressComposited
  • InactiveSearchBoxEdit
  • InactiveSearchBoxEditComposited
  • MaxAddress
  • MaxAddressComposited
  • MaxInactiveAddress
  • MaxInactiveAddressComposited
  • MaxInactiveSearchBoxEdit
  • MaxInactiveSearchBoxEditComposited
  • MaxSearchBoxEdit
  • MaxSearchBoxEditComposited
  • SearchBoxEdit
  • SearchBoxEditComposited
Rebar
  • BrowserTabBar
  • InactiveNavbar
  • InactivoNavbarComposited
  • MaxInactiveNavbar
  • MaxInactiveNavbarComposited
  • MaxNavbar
  • MaxNavbarComposited
  • Barra de navegación
  • NavbarComposited
  • NavbarNonTopmost
Pestaña
  • BrowserTab
Barra de herramientas
  • Go
  • GoComposited
  • InactiveGo
  • InactiveGoComposited
  • MaxGo
  • MaxGoComposited
  • MaxInactiveGo
  • MaxInactiveGoComposited
  • SearchButton
  • SearchButtonComposited
  • Viajes
  • TravelComposited

 

Subclases de Internet Explorer

En Windows Vista, las subclases de determinadas clases internas para Windows Internet Explorer y el Explorador de Windows están disponibles aunque las clases en sí no lo sean. En la tabla siguiente se enumeran las subclases disponibles.

Clase Subclase
AddressBand
  • AB
  • ABGreen
  • ABGreenComposited
  • ABRed
  • ABRedComposited
  • ABYellow
  • ABYellowComposited
SearchBox
  • InactiveSearchBox
  • InactiveSearchBoxComposited
  • MaxInactiveSearchBox
  • MaxInactiveSearchBoxComposited
  • MaxSearchBox
  • MaxSearchBoxComposited
  • SearchBoxComposited

 

En la tabla siguiente se muestran los detalles de estas clases.

Control Parte States
ADDRESSBAND ABBACKGROUND NORMAL (0x1), HOT (0x2), DISABLED (0x3), FOCUSED (0x4)
SEARCHBOX SBBACKGROUND NORMAL (0x1), HOT (0x2), DISABLED (0x3), FOCUSED (0x4)