Condividi tramite


Funzione DrawStateA (winuser.h)

La funzione DrawState visualizza un'immagine e applica un effetto visivo per indicare uno stato, ad esempio uno stato disabilitato o predefinito.

Sintassi

BOOL DrawStateA(
  [in] HDC           hdc,
  [in] HBRUSH        hbrFore,
  [in] DRAWSTATEPROC qfnCallBack,
  [in] LPARAM        lData,
  [in] WPARAM        wData,
  [in] int           x,
  [in] int           y,
  [in] int           cx,
  [in] int           cy,
  [in] UINT          uFlags
);

Parametri

[in] hdc

Handle per il contesto del dispositivo da disegnare.

[in] hbrFore

Handle del pennello utilizzato per disegnare l'immagine, se lo stato specificato dal parametro fuFlags è DSS_MONO. Questo parametro viene ignorato per altri stati.

[in] qfnCallBack

Puntatore a una funzione di callback definita dall'applicazione usata per eseguire il rendering dell'immagine. Questo parametro è obbligatorio se il tipo di immagine in fuFlags è DST_COMPLEX. È facoltativo e può essere NULL se il tipo di immagine è DST_TEXT. Per tutti gli altri tipi di immagine, questo parametro viene ignorato. Per altre informazioni sulla funzione di callback, vedere la funzione DrawStateProc.

[in] lData

Informazioni sull'immagine. Il significato di questo parametro dipende dal tipo di immagine.

[in] wData

Informazioni sull'immagine. Il significato di questo parametro dipende dal tipo di immagine. È tuttavia zero esteso per l'uso con la funzione DrawStateProc.

[in] x

Posizione orizzontale, in unità di dispositivo, in cui disegnare l'immagine.

[in] y

Posizione verticale, in unità dispositivo, in cui disegnare l'immagine.

[in] cx

Larghezza dell'immagine, in unità dispositivo. Questo parametro è obbligatorio se il tipo di immagine è DST_COMPLEX. In caso contrario, può essere zero per calcolare la larghezza dell'immagine.

[in] cy

Altezza dell'immagine, in unità dispositivo. Questo parametro è obbligatorio se il tipo di immagine è DST_COMPLEX. In caso contrario, può essere zero per calcolare l'altezza dell'immagine.

[in] uFlags

Tipo e stato dell'immagine. Questo parametro può essere uno dei valori di tipo seguenti.

Valore (tipo) Significato
DST_BITMAP
L'immagine è una bitmap. Il parametro lData è l'handle bitmap. Si noti che la bitmap non può essere già selezionata in un contesto di dispositivo esistente.
DST_COMPLEX
L'immagine è definita dall'applicazione. Per eseguire il rendering dell'immagine, DrawState chiama la funzione di callback specificata dal parametro lpOutputFunc .
DST_ICON
L'immagine è un'icona. Il parametro lData è l'handle dell'icona.
DST_PREFIXTEXT
L'immagine è un testo che può contenere un tasto di scelta rapida. DrawState interpreta il carattere di prefisso e commerciale (&) come direttiva per evidenziare il carattere che segue. Il parametro lData è un puntatore alla stringa e il parametro wData specifica la lunghezza. Se wData è zero, la stringa deve essere con terminazione Null.
DST_TEXT
L'immagine è testo. Il parametro lData è un puntatore alla stringa e il parametro wData specifica la lunghezza. Se wData è zero, la stringa deve essere con terminazione Null.
 

Questo parametro può anche essere uno dei valori di stato seguenti.

Valore (stato) Significato
DSS_DISABLED
In rilievo l'immagine.
DSS_HIDEPREFIX
Ignora il carattere prefisso della e commerciale (&) nel testo, quindi la lettera che segue non verrà sottolineata. Questa operazione deve essere usata con DST_PREFIXTEXT.
DSS_MONO
Disegna l'immagine usando il pennello specificato dal parametro hbr.
DSS_NORMAL
Disegna l'immagine senza alcuna modifica.
DSS_PREFIXONLY
Disegna solo la sottolineatura nella posizione della lettera dopo il carattere prefisso dell'e commerciale (&). Non viene disegnato alcun testo nella stringa. Questa operazione deve essere usata con DST_PREFIXTEXT.
DSS_RIGHT
Allinea il testo a destra.
DSS_UNION
Dithers l'immagine.
 

Per tutti gli stati tranne DSS_NORMAL, l'immagine viene convertita in monocromatica prima dell'applicazione dell'effetto visivo.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero.

Osservazioni

Nota

L'intestazione winuser.h definisce DrawState come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows 2000 Professional [solo app desktop]
server minimo supportato Windows 2000 Server [solo app desktop]
piattaforma di destinazione Finestre
intestazione winuser.h (include Windows.h)
libreria User32.lib
dll User32.dll

Vedere anche

DrawStateProc

funzioni di disegno e disegno

panoramica disegno e disegno