Estructura TVITEMW (commctrl.h)

Especifica o recibe atributos de un elemento de vista de árbol. Esta estructura es idéntica a la estructura de TV_ITEM , pero se ha cambiado el nombre para seguir las convenciones de nomenclatura actuales. Las nuevas aplicaciones deben usar esta estructura.

Sintaxis

typedef struct tagTVITEMW {
  UINT      mask;
  HTREEITEM hItem;
  UINT      state;
  UINT      stateMask;
  LPWSTR    pszText;
  int       cchTextMax;
  int       iImage;
  int       iSelectedImage;
  int       cChildren;
  LPARAM    lParam;
} TVITEMW, *LPTVITEMW;

Miembros

mask

Tipo: UINT

Matriz de marcas que indican cuáles de los demás miembros de la estructura contienen datos válidos. Cuando esta estructura se usa con el mensaje TVM_GETITEM , el miembro mask indica los atributos de elemento que se van a recuperar. Si se usa con el mensaje de TVM_SETITEM , la máscara indica los atributos que se van a establecer. Este miembro puede ser uno o varios de los valores siguientes:

Valor Significado
TVIF_CHILDREN
El miembro cChildren es válido.
TVIF_DI_SETITEM
El control de vista de árbol conservará la información proporcionada y no la volverá a solicitar. Esta marca solo es válida cuando se procesa la notificación TVN_GETDISPINFO .
TVIF_HANDLE
El miembro hItem es válido.
TVIF_IMAGE
El miembro iImage es válido.
TVIF_PARAM
El miembro lParam es válido.
TVIF_SELECTEDIMAGE
El miembro iSelectedImage es válido.
TVIF_STATE
Los miembros state y stateMask son válidos.
TVIF_TEXT
Los miembros pszText y cchTextMax son válidos.

hItem

Tipo: HTREEITEM

Identificador del elemento.

state

Tipo: UINT

Conjunto de marcas de bits e índices de lista de imágenes que indican el estado del elemento. Al establecer el estado de un elemento, el miembro stateMask indica los bits válidos de este miembro. Al recuperar el estado de un elemento, este miembro devuelve el estado actual de los bits indicados en el miembro stateMask .

Los bits del 0 al 7 de este miembro contienen las marcas de estado del elemento. Para obtener una lista de posibles marcas de estado de elemento, vea Estados de elementos de control de vista de árbol.

 

La imagen de superposición se superpone sobre la imagen de icono del elemento. Los bits de 8 a 11 de este miembro especifican el índice de imagen de superposición basado en uno. Si estos bits son cero, el elemento no tiene ninguna imagen de superposición. Para aislar estos bits, use la máscara de TVIS_OVERLAYMASK . Para establecer el índice de imagen de superposición en este miembro, use la macro INDEXTOOVERLAYMASK . Las imágenes superpuestas de la lista de imágenes se establecen con la función ImageList_SetOverlayImage .

 

Se muestra una imagen de estado junto al icono de un elemento para indicar un estado definido por la aplicación. Especifique la lista de imágenes de estado mediante el envío de un mensaje de TVM_SETIMAGELIST . Para establecer la imagen de estado de un elemento, incluya el valor TVIS_STATEIMAGEMASK en el miembro stateMask de la estructura TVITEM . Los bits de 12 a 15 del miembro de estado de la estructura especifican el índice en la lista de imágenes de estado de la imagen que se va a dibujar.

 

Para establecer el índice de imagen de estado, use INDEXTOSTATEIMAGEMASK. Esta macro toma un índice y establece los bits de 12 a 15 adecuadamente. Para indicar que el elemento no tiene ninguna imagen de estado, establezca el índice en cero. Esta convención significa que la imagen cero de la lista de imágenes de estado no se puede usar como imagen de estado. Para aislar los bits de 12 a 15 del miembro de estado , use la máscara de TVIS_STATEIMAGEMASK .

stateMask

Tipo: UINT

Bits del miembro de estado que son válidos. Si va a recuperar el estado de un elemento, establezca los bits del miembro stateMask para indicar los bits que se devolverán en el miembro de estado . Si establece el estado de un elemento, establezca los bits del miembro stateMask para indicar los bits del miembro de estado que desea establecer. Para establecer o recuperar el índice de imagen de superposición de un elemento, establezca los bits de TVIS_OVERLAYMASK . Para establecer o recuperar el índice de imagen de estado de un elemento, establezca los bits de TVIS_STATEIMAGEMASK .

pszText

Tipo: LPTSTR

Puntero a una cadena terminada en null que contiene el texto del elemento si la estructura especifica atributos de elemento. Si este miembro es el valor de LPSTR_TEXTCALLBACK, la ventana primaria es responsable de almacenar el nombre. En este caso, el control de vista de árbol envía a la ventana primaria un código de notificación TVN_GETDISPINFO cuando necesita el texto del elemento para mostrar, ordenar o editar y un código de notificación de TVN_SETDISPINFO cuando cambia el texto del elemento. Si la estructura recibe atributos de elemento, este miembro es la dirección del búfer que recibe el texto del elemento. Tenga en cuenta que, aunque el control de vista de árbol permite almacenar cualquier cadena de longitud como texto de elemento, solo se muestran los primeros 260 caracteres.

cchTextMax

Tipo: int

Tamaño del búfer al que apunta el miembro pszText , en caracteres. Si esta estructura se usa para establecer atributos de elemento, se omite este miembro.

iImage

Tipo: int

Índice de la lista de imágenes del control de vista de árbol de la imagen de icono que se va a usar cuando el elemento está en estado no seleccionado. Si este miembro es el valor I_IMAGECALLBACK, la ventana primaria es responsable de almacenar el índice. En este caso, el control de vista de árbol envía al elemento primario un código de notificación de TVN_GETDISPINFO para recuperar el índice cuando necesite mostrar la imagen.

iSelectedImage

Tipo: int

Índice de la lista de imágenes del control de vista de árbol de la imagen de icono que se va a usar cuando el elemento está en el estado seleccionado. Si este miembro es el valor I_IMAGECALLBACK, la ventana primaria es responsable de almacenar el índice. En este caso, el control de vista de árbol envía al elemento primario un código de notificación de TVN_GETDISPINFO para recuperar el índice cuando necesite mostrar la imagen.

cChildren

Tipo: int

Marca que indica si el elemento tiene elementos secundarios asociados. Este miembro puede ser uno de los valores siguientes.

Valor Significado
zero
El elemento no tiene elementos secundarios.
Una
El elemento tiene uno o varios elementos secundarios.
I_CHILDRENCALLBACK
La ventana primaria realiza un seguimiento de si el elemento tiene elementos secundarios. En este caso, cuando el control de vista de árbol necesita mostrar el elemento, el control envía al elemento primario un código de notificación TVN_GETDISPINFO para determinar si el elemento tiene elementos secundarios.

Si el control de vista de árbol tiene el estilo TVS_HASBUTTONS , usa este miembro para determinar si se debe mostrar el botón que indica la presencia de elementos secundarios. Puede usar este miembro para forzar que el control muestre el botón aunque el elemento no tenga ningún elemento secundario insertado. Esto le permite mostrar el botón al minimizar el uso de memoria del control insertando elementos secundarios solo cuando el elemento está visible o expandido.

I_CHILDRENAUTO

Versión 6.0Diseñada para uso interno; no se recomienda para su uso en aplicaciones. El control de vista de árbol determina automáticamente si el elemento tiene elementos secundarios.

Nota Es posible que esta marca no se admita en versiones futuras de Comctl32.dll. Además, esta marca no está definida en commctrl.h. Agregue la siguiente definición a los archivos de origen de la aplicación para usar la marca :
#define I_CHILDRENAUTO (-2)
 

lParam

Tipo: LPARAM

Valor que se va a asociar al elemento.

Comentarios

Nota

El encabezado commctrl.h define TVITEM como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

   
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Encabezado commctrl.h