Condividi tramite


Struttura TVITEMA (commctrl.h)

Specifica o riceve attributi di un elemento di visualizzazione ad albero. Questa struttura è identica alla struttura TV_ITEM , ma è stata rinominata per 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;

Members

mask

Tipo: UINT

Matrice di flag che indicano quale degli altri membri della struttura contengono dati validi. Quando questa struttura viene usata 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_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
I membri state e 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 .

Bit da 0 a 7 di questo membro contengono i flag di stato dell'elemento. Per un elenco dei flag di stato dell'elemento possibili, vedere Stati degli elementi di controllo Di visualizzazione albero.

 

L'immagine di sovrapposizione viene sovrapposta all'immagine dell'icona dell'elemento. Bit da 8 a 11 di questo membro specificano l'indice di immagine di sovrapposizione basato su 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 sovrapposizione in questo membro, usare la macro INDEXTOOVERLAYMASK . Le immagini di sovrapposizione dell'elenco di immagini vengono impostate con la funzione ImageList_SetOverlayImage .

 

Un'immagine di stato viene visualizzata accanto all'icona di un elemento 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 . Bit da 12 a 15 del membro dello stato della struttura specificare 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 delle 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 recupera 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 della maschera di stato per indicare i bit del membro dello stato 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 dell'immagine dello stato di un elemento, impostare i bit di TVIS_STATEIMAGEMASK .

pszText

Tipo: LPTSTR

Puntatore a una stringa con terminazione null contenente 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 richiede 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 usata 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.
Uno
L'elemento ha uno o più elementi figlio.
I_CHILDRENCALLBACK
La finestra padre tiene traccia del fatto che l'elemento abbia 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.

Commenti

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 che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

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