Condividi tramite


Struttura TVITEMA (commctrl.h)

Specifica o riceve gli attributi di un elemento della visualizzazione albero. Questa struttura è identica alla struttura TV_ITEM, ma è stata rinominata in modo da seguire le convenzioni di denominazione correnti. Le nuove applicazioni devono usare questa struttura.

Sintassi

typedef struct tagTVITEMA {
  UINT      mask;
  HTREEITEM hItem;
  UINT      state;
  UINT      stateMask;
  LPSTR     pszText;
  int       cchTextMax;
  int       iImage;
  int       iSelectedImage;
  int       cChildren;
  LPARAM    lParam;
} TVITEMA, *LPTVITEMA;

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_HANDLE
Il membro hItem è valido.
TVIF_IMAGE
Il membro iImage è valido.
TVIF_PARAM
Il membro lParam è valido.
TVIF_SELECTEDIMAGE
Il membro iSelectedImage è valido.
TVIF_STATE
Lo stato e membri stateMask sono validi.
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.

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.

 

L'immagine di sovrimpressione viene sovrapposta all'immagine dell'icona dell'elemento. I bit da 8 a 11 di questo membro specificano l'indice dell'immagine di sovrimpressione in base uno. 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 nel 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 dello stato membro, usare 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.

Osservazioni

Nota

L'intestazione commctrl.h definisce TVITEM 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