Funzione DrawThemeBackground (uxtheme.h)
Disegna il bordo e il riempimento definiti dallo stile di visualizzazione per la parte di controllo specificata.
Sintassi
HRESULT DrawThemeBackground(
[in] HTHEME hTheme,
[in] HDC hdc,
[in] int iPartId,
[in] int iStateId,
[in] LPCRECT pRect,
[in] LPCRECT pClipRect
);
Parametri
[in] hTheme
Tipo: HTHEME
Handle per i dati del tema specificati di una finestra. Usare OpenThemeData per creare un HTHEME.
[in] hdc
Tipo: HDC
HDC usato per disegnare l'immagine di sfondo definita dal tema.
[in] iPartId
Tipo: int
Valore di tipo int che specifica la parte da disegnare. Vedere Parti e stati.
[in] iStateId
Tipo: int
Valore di tipo int che specifica lo stato della parte da disegnare. Vedere Parti e stati.
[in] pRect
Tipo: const RECT*
Puntatore a una struttura RECT che contiene il rettangolo, in coordinate logiche, in cui viene disegnata l'immagine di sfondo.
[in] pClipRect
Tipo: const RECT*
Puntatore a una struttura RECT contenente un rettangolo di ritaglio. Questo parametro può essere impostato su NULL.
Valore restituito
Tipo: HRESULT
Se questa funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
Le operazioni di disegno vengono ridimensionate per adattarsi e non superare il rettangolo specificato in pRect. L'applicazione non deve disegnare all'esterno del rettangolo specificato da pClipRect.
Esempio
Prima di chiamare DrawThemeBackground per disegnare l'immagine di sfondo per una finestra, è possibile chiamare IsThemeBackgroundPartiallyTransparent. Questo metodo determina se è necessario chiamare DrawThemeParentBackground per disegnare in background dietro controlli figlio parzialmente trasparenti o alfa misti ed è illustrato nell'esempio seguente.
if (_hTheme)
{
if (IsThemeBackgroundPartiallyTransparent(_hTheme, BP_PUSHBUTTON, _iStateId))
{
DrawThemeParentBackground(_hwnd, hdcPaint, prcPaint);
}
DrawThemeBackground(_hTheme,
hdcPaint,
BP_PUSHBUTTON,
_iStateId,
&rcClient,
prcPaint);
}
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | uxtheme.h |
Libreria | UxTheme.lib |
DLL | UxTheme.dll |