Compartir a través de


Función DrawThemeBackground (uxtheme.h)

Dibuja el borde y el relleno definidos por el estilo visual de la parte de control especificada.

Sintaxis

HRESULT DrawThemeBackground(
  [in] HTHEME  hTheme,
  [in] HDC     hdc,
  [in] int     iPartId,
  [in] int     iStateId,
  [in] LPCRECT pRect,
  [in] LPCRECT pClipRect
);

Parámetros

[in] hTheme

Tipo: HTHEME

Identificador de los datos de tema especificados de una ventana. Use OpenThemeData para crear un HTHEME.

[in] hdc

Tipo: HDC

HDC usado para dibujar la imagen de fondo definida por el tema.

[in] iPartId

Tipo: int

Valor de tipo int que especifica la parte que se va a dibujar. Vea Partes y estados.

[in] iStateId

Tipo: int

Valor de tipo int que especifica el estado de la parte que se va a dibujar. Vea Partes y estados.

[in] pRect

Tipo: const RECT*

Puntero a una estructura RECT que contiene el rectángulo, en coordenadas lógicas, en las que se dibuja la imagen de fondo.

[in] pClipRect

Tipo: const RECT*

Puntero a una estructura RECT que contiene un rectángulo de recorte. Este parámetro se puede establecer en NULL.

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

Las operaciones de dibujo se escalan para ajustarse y no superan el rectángulo especificado en pRect. La aplicación no debe dibujar fuera del rectángulo especificado por pClipRect.

Ejemplos

Antes de llamar a DrawThemeBackground para dibujar la imagen de fondo de una ventana, puede llamar a IsThemeBackgroundPartiallyTransparent. Este método determina si se debe llamar a DrawThemeParentBackground para dibujar en fondos detrás de controles secundarios parcialmente transparentes o combinados alfa, y se muestra en el ejemplo siguiente.

if (_hTheme)
{
  if (IsThemeBackgroundPartiallyTransparent(_hTheme, BP_PUSHBUTTON, _iStateId))
  {
    DrawThemeParentBackground(_hwnd, hdcPaint, prcPaint);
  }

  DrawThemeBackground(_hTheme,
                    hdcPaint,
                    BP_PUSHBUTTON,
                    _iStateId,
                    &rcClient,
                    prcPaint);
}

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

Consulte también

Identificadores de propiedad