Struttura TVITEMEXA (commctrl.h)

Specifica o riceve gli attributi di un elemento della visualizzazione albero. Questa struttura è un miglioramento della struttura TVITEM . Le nuove applicazioni devono usare questa struttura, se appropriato.

Sintassi

typedef struct tagTVITEMEXA {
  UINT      mask;
  HTREEITEM hItem;
  UINT      state;
  UINT      stateMask;
  LPSTR     pszText;
  int       cchTextMax;
  int       iImage;
  int       iSelectedImage;
  int       cChildren;
  LPARAM    lParam;
  int       iIntegral;
  UINT      uStateEx;
  HWND      hwnd;
  int       iExpandedImage;
  int       iReserved;
} TVITEMEXA, *LPTVITEMEXA;

Members

mask

Tipo: UINT

Matrice di flag che indicano quale degli altri membri della struttura contengono dati validi. Quando questa struttura viene utilizzata con il messaggio TVM_GETITEM , il membro mask indica gli attributi dell'elemento da recuperare. Se usato con il messaggio TVM_SETITEM , la maschera indica gli attributi da impostare. Questo membro può essere uno o più dei valori seguenti:

Valore Significato
TVIF_CHILDREN
Il membro cChildren è valido.
TVIF_DI_SETITEM
Il controllo visualizzazione albero manterrà le informazioni fornite e non lo richiederà di nuovo. Questo flag è valido solo quando si elabora la notifica di TVN_GETDISPINFO .
TVIF_EXPANDEDIMAGE

Versione 6.00 e Windows Vista. Il membro iExpandedImage è valido.

TVIF_HANDLE
Il membro hItem è valido.
TVIF_IMAGE
Il membro iImage è valido.
TVIF_INTEGRAL
Il membro iIntegral è valido.
TVIF_PARAM
Il membro lParam è valido.
TVIF_SELECTEDIMAGE
Il membro iSelectedImage è valido.
TVIF_STATE
I membri stateMask e stateMask sono validi.
TVIF_STATEEX

Versione 6.00 e Windows Vista. Il membro uStateEx è valido.

TVIF_TEXT
I membri pszText e cchTextMax sono validi.

hItem

Tipo: HTREEITEM

Handle per l'elemento.

state

Tipo: UINT

Set di flag di bit e indici di elenco di immagini che indicano lo stato dell'elemento. Quando si imposta lo stato di un elemento, il membro stateMask indica i bit validi di questo membro. Quando si recupera lo stato di un elemento, questo membro restituisce lo stato corrente per i bit indicati nel membro stateMask . Per altre informazioni su questo membro, vedere la sezione osservazioni.

I bit da 0 a 7 di questo membro contengono i flag di stato dell'elemento. Per un elenco dei possibili flag di stato dell'elemento, vedere Stati degli elementi del controllo Visualizzazione ad albero.

I bit da 8 a 11 di questo membro specificano l'indice dell'immagine di sovrimpressione in base uno. L'immagine di sovrimpressione viene sovrapposta all'immagine dell'icona dell'elemento. Se questi bit sono zero, l'elemento non ha un'immagine sovrapposta. Per isolare questi bit, usare la maschera TVIS_OVERLAYMASK . Per impostare l'indice dell'immagine di sovrimpressione in questo membro, usare la macro INDEXTOOVERLAYMASK . Le immagini sovrapposte dell'elenco di immagini vengono impostate con la funzione ImageList_SetOverlayImage .

Accanto all'icona di un elemento viene visualizzata un'immagine di stato per indicare uno stato definito dall'applicazione. Specificare l'elenco di immagini di stato inviando un messaggio di TVM_SETIMAGELIST . Per impostare l'immagine dello stato di un elemento, includere il valore TVIS_STATEIMAGEMASK nel membro StateMask della struttura TVITEM . I bit da 12 a 15 del membro di stato della struttura specificano l'indice nell'elenco di immagini di stato dell'immagine da disegnare.

Per impostare l'indice dell'immagine di stato, usare INDEXTOSTATEIMAGEMASK. Questa macro accetta un indice e imposta i bit da 12 a 15 in modo appropriato. Per indicare che l'elemento non ha un'immagine di stato, impostare l'indice su zero. Questa convenzione significa che l'immagine zero nell'elenco di immagini di stato non può essere usata come immagine di stato. Per isolare i bit da 12 a 15 del membro dello stato , usare la maschera TVIS_STATEIMAGEMASK .

stateMask

Tipo: UINT

Bit del membro dello stato valido. Se si sta recuperando lo stato di un elemento, impostare i bit del membro stateMask per indicare i bit da restituire nel membro dello stato . Se si imposta lo stato di un elemento, impostare i bit del membro stateMask per indicare i bit del membro dello stato che si desidera impostare. Per impostare o recuperare l'indice dell'immagine di sovrimpressione di un elemento, impostare i bit TVIS_OVERLAYMASK . Per impostare o recuperare l'indice dell'immagine dello stato di un elemento, impostare i bit TVIS_STATEIMAGEMASK .

pszText

Tipo: LPTSTR

Puntatore a una stringa con terminazione Null che contiene il testo dell'elemento se la struttura specifica gli attributi dell'elemento. Se questo membro è il valore LPSTR_TEXTCALLBACK, la finestra padre è responsabile dell'archiviazione del nome. In questo caso, il controllo visualizzazione albero invia alla finestra padre un codice di notifica TVN_GETDISPINFO quando è necessario il testo dell'elemento per la visualizzazione, l'ordinamento o la modifica e un codice di notifica TVN_SETDISPINFO quando il testo dell'elemento viene modificato. Se la struttura riceve gli attributi dell'elemento, questo membro è l'indirizzo del buffer che riceve il testo dell'elemento. Si noti che anche se il controllo visualizzazione albero consente l'archiviazione di qualsiasi stringa di lunghezza come testo dell'elemento, vengono visualizzati solo i primi 260 caratteri.

cchTextMax

Tipo: int

Dimensioni del buffer a cui punta il membro pszText , in caratteri. Se questa struttura viene utilizzata per impostare gli attributi dell'elemento, questo membro viene ignorato.

iImage

Tipo: int

Indice nell'elenco di immagini del controllo visualizzazione albero dell'immagine dell'icona da utilizzare quando l'elemento è nello stato non selezionato. Se questo membro è il valore I_IMAGECALLBACK, la finestra padre è responsabile dell'archiviazione dell'indice. In questo caso, il controllo visualizzazione albero invia all'elemento padre un codice di notifica TVN_GETDISPINFO per recuperare l'indice quando deve visualizzare l'immagine.

iSelectedImage

Tipo: int

Indice nell'elenco di immagini del controllo visualizzazione albero dell'immagine dell'icona da usare quando l'elemento è nello stato selezionato. Se questo membro è il valore I_IMAGECALLBACK, la finestra padre è responsabile dell'archiviazione dell'indice. In questo caso, il controllo visualizzazione albero invia all'elemento padre un codice di notifica TVN_GETDISPINFO per recuperare l'indice quando deve visualizzare l'immagine.

cChildren

Tipo: int

Flag che indica se l'elemento include elementi figlio associati. Questo membro può essere uno dei valori seguenti:

Valore Significato
Zero
L'elemento non ha elementi figlio.
Uno
L'elemento ha uno o più elementi figlio.
I_CHILDRENCALLBACK
La finestra padre tiene traccia dell'eventuale presenza di elementi figlio. In questo caso, quando il controllo visualizzazione albero deve visualizzare l'elemento, il controllo invia all'elemento padre un codice di notifica TVN_GETDISPINFO per determinare se l'elemento ha elementi figlio. Se il controllo visualizzazione albero ha lo stile TVS_HASBUTTONS , usa questo membro per determinare se visualizzare il pulsante che indica la presenza di elementi figlio. È possibile usare questo membro per forzare il controllo per visualizzare il pulsante anche se l'elemento non ha elementi figlio inseriti. In questo modo è possibile visualizzare il pulsante riducendo al minimo l'utilizzo della memoria del controllo inserendo elementi figlio solo quando l'elemento è visibile o espanso.
I_CHILDRENAUTO

Versione 6.0Destinata all'uso interno; non consigliata per l'uso nelle applicazioni. Il controllo visualizzazione albero determina automaticamente se l'elemento ha elementi figlio.

Nota Questo flag potrebbe non essere supportato nelle versioni future di Comctl32.dll. Inoltre, questo flag non è definito in commctrl.h. Aggiungere la definizione seguente ai file di origine dell'applicazione per usare il flag:
#define I_CHILDRENAUTO (-2)
 

lParam

Tipo: LPARAM

Valore da associare all'elemento.

iIntegral

Tipo: int

Altezza dell'elemento, in più dell'altezza dell'elemento standard (vedere TVM_SETITEMHEIGHT). Ad esempio, l'impostazione di questo membro su 2 darà all'elemento due volte l'altezza standard. Il controllo visualizzazione albero non disegna nell'area aggiuntiva, visualizzata sotto il contenuto dell'elemento, ma questo spazio può essere usato dall'applicazione per il disegno quando si usa un disegno personalizzato. Le applicazioni che non usano il disegno personalizzato devono impostare questo valore su 1, in caso contrario il comportamento non è definito.

uStateEx

Tipo: UINT

Internet Explorer 6 e versioni successive. Uno o più (come combinazione bit per bit) degli stati estesi seguenti.

Valore Significato
TVIS_EX_DISABLED
Windows Vista e versioni successive. Crea un controllo disegnato in grigio, con cui l'utente non può interagire.
TVIS_EX_FLAT
Crea un elemento flat: l'elemento è virtuale e non è visibile nell'albero; Invece, i suoi figli prendono il suo posto nella gerarchia dell'albero. Questo stato è valido solo quando si aggiunge un elemento al controllo visualizzazione albero.
TVIS_EX_HWND
Crea un HWND separato per l'elemento. Questo stato è valido solo quando si aggiunge un elemento al controllo visualizzazione albero.

hwnd

Tipo: HWND

Internet Explorer 6 e versioni successive. Non usato; deve essere NULL.

iExpandedImage

Tipo: int

Internet Explorer 6 e versioni successive. Indice dell'immagine nell'elenco di immagini del controllo da visualizzare quando l'elemento si trova nello stato espanso.

iReserved

Tipo: int

Membro riservato. Non usare.

Commenti

Nota

L'intestazione commctrl.h definisce TVITEMEX come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

   
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Intestazione commctrl.h

Vedi anche

Aggiunta di elementi Tree-View