Condividi tramite


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;

Membri

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 di 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 la 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
Lo stato e membri 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 Tree-View Control Item States.

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 di sovrapposizione. 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 in The stateMask membro della struttura TVITEM. I bit da 12 a 15 dello stato della struttura membro 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 indica 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 stato di , utilizzare la maschera di TVIS_STATEIMAGEMASK.

stateMask

Tipo: UINT

Bit dello stato membro valido. Se si recupera lo stato di un elemento, impostare i bit del membro stateMask per indicare i bit da restituire nello stato membro. Se si imposta lo stato di un elemento, impostare i bit del membro stateMask per indicare i bit dello stato membro da impostare. Per impostare o recuperare l'indice dell'immagine di sovrapposizione di un elemento, impostare i bit di TVIS_OVERLAYMASK. Per impostare o recuperare l'indice di immagine dello stato di un elemento, impostare i bit di 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 cambia. 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 usare quando l'elemento si trova 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 si trova 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 ha elementi figlio associati. Questo membro può essere uno dei valori seguenti:

Valore Significato
zero
L'elemento non ha elementi figlio.
un
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 contiene elementi figlio. Se il controllo visualizzazione albero ha lo stile TVS_HASBUTTONS, questo membro viene utilizzato per determinare se visualizzare il pulsante che indica la presenza di elementi figlio. È possibile utilizzare questo membro per forzare il controllo a visualizzare il pulsante anche se l'elemento non include elementi figlio inseriti. Ciò consente di 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.0destinato all'uso interno; non consigliato per l'uso nelle applicazioni. Il controllo visualizzazione albero determina automaticamente se l'elemento include 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 multipli 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 utilizzato dall'applicazione per il disegno quando si utilizza disegno personalizzato. Le applicazioni che non usano un disegno personalizzato devono impostare questo valore su 1, in caso contrario il comportamento non è definito.

uStateEx

Tipo: UINT

Internet Explorer 6 e versioni successive. Una 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 piatto: l'elemento è virtuale e non è visibile nell'albero; Gli elementi figlio hanno invece 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 utilizzato; 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.

Osservazioni

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 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 Vista [solo app desktop]
server minimo supportato Windows Server 2003 [solo app desktop]
intestazione commctrl.h

Vedere anche

Aggiunta di elementi Tree-View