Condividi tramite


macro ListView_SetItemState (commctrl.h)

Modifica lo stato di un elemento in un controllo di visualizzazione elenco. È possibile usare questa macro o inviare in modo esplicito il messaggio LVM_SETITEMSTATE .

Sintassi

void ListView_SetItemState(
   hwndLV,
   i,
   data,
   mask
);

Parametri

hwndLV

Tipo: HWND

Handle per il controllo di visualizzazione elenco.

i

Tipo: int

Indice dell'elemento di visualizzazione elenco. Se questo parametro è -1, la modifica dello stato viene applicata a tutti gli elementi.

data

Tipo: UINT

Nuovi bit di stato per l'elemento. Il parametro mask indica i bit validi del parametro di stato . La macro ignora i bit nel parametro di stato se il bit corrispondente non è impostato nel parametro mask . Il byte a basso ordine contiene un set di flag di bit che indicano lo stato dell'elemento. Questo byte può essere una combinazione dei valori seguenti:

Valore Significato
LVIS_CUT
L'elemento è contrassegnato per un'operazione di taglio e incolla.
LVIS_DROPHILITED
L'elemento viene evidenziato come destinazione di trascinamento della selezione.
LVIS_FOCUSED
L'elemento ha lo stato attivo, quindi è circondato da un rettangolo di stato attivo standard. Anche se è possibile selezionare più di un elemento, solo un elemento può avere lo stato attivo.
LVIS_SELECTED
L'elemento è selezionato. L'aspetto di un elemento selezionato dipende dal fatto che abbia lo stato attivo e anche sui colori di sistema usati per la selezione. Gli elementi verranno visualizzati come selezionati solo se viene usato lo stato attivo del controllo visualizzazione elenco o lo stile LVS_SHOWSELALWAYS .

mask

Tipo: UINT

Bit del parametro di stato che si desidera impostare o cancellare. È possibile usare ListView_SetItemState per impostare e cancellare i bit. Per impostare l'indice dell'immagine di sovrapposizione di un elemento, impostare i bit di LVIS_OVERLAYMASK . Per impostare l'indice dell'immagine di stato di un elemento, impostare i bit di LVIS_STATEIMAGEMASK .

Valore restituito

nessuno

Osservazioni

Il valore dello stato di un elemento include un set di flag di bit che indicano lo stato dell'elemento. Il valore dello stato può includere anche indici dell'elenco di immagini che indicano l'immagine dello stato dell'elemento e l'immagine di sovrapposizione.

Il parametro mask specifica i bit di stato da modificare e il parametro di stato specifica il nuovo valore per tali bit. Per impostare un bit nello stato interno dell'elemento, impostarlo sia nei parametri maschera che nello stato . Per cancellare un bit nello stato interno dell'elemento, impostarlo nel parametro mask e cancellarlo nel parametro di stato . Per lasciare invariato lo stato interno dell'elemento, cancellarlo nel parametro mask .

Bit da 8 a 11 del parametro di stato specificare l'indice basato su un'immagine sovrapposta negli elenchi di immagini del controllo. Sia l'elenco di immagini a dimensioni complete che l'elenco di immagini a forma di icona piccola possono avere immagini sovrapposte. L'immagine di sovrapposizione viene sovrapposta all'immagine dell'icona dell'elemento. Se questi bit sono zero, l'elemento non ha un'immagine di sovrapposizione. Per isolare questi bit, usare la maschera LVIS_OVERLAYMASK . Per specificare un indice di sovrapposizione, usare la macro INDEXTOOVERLAYMASK .

Bit da 12 a 15 del parametro di stato specificare l'indice basato su un'immagine nell'elenco di immagini dello stato del controllo. L'immagine di stato viene visualizzata accanto all'icona di un elemento per indicare uno stato definito dall'applicazione. Se questi bit sono zero, l'elemento non ha un'immagine di stato. Per isolare questi bit, usare la maschera LVIS_STATEIMAGEMASK . Per specificare un indice di immagine di stato, usare la macro INDEXTOSTATEIMAGEMASK .

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 commctrl.h

Vedi anche

ListView_GetItemState