Elementos de devolución de llamada y máscara de devolución de llamada
Cada uno de sus elementos cuenta con un control de vista de lista que suele almacenar el texto de la etiqueta, el índice de la lista de imágenes de los iconos del elemento y un conjunto de marcas de bits del estado del elemento. Puede definir elementos individuales como elementos de devolución de llamada, que son útiles si la aplicación ya almacena parte de la información de un elemento.
Para definir un elemento como elemento de devolución de llamada, es preciso especificar los valores adecuados de los miembros pszText
y iImage
de la estructura LVITEM
(vea CListCtrl::GetItem). Si la aplicación mantiene el texto del elemento o del subelemento, especifique el valor de LPSTR_TEXTCALLBACK para el miembro pszText
. Si la aplicación realiza un seguimiento del icono del elemento, especifique el valor de I_IMAGECALLBACK para el miembro iImage
.
Además de definir elementos de devolución de llamada, también puede modificar la máscara de devolución de llamada del control. Esta máscara es un conjunto de marcas de bits que especifican los estados del elemento para los que la aplicación, en lugar del control, almacena los datos actuales. La máscara de devolución de llamada se aplica a todos los elementos del control, a diferencia de la designación del elemento de devolución de llamada, que se aplica a un elemento concreto. La máscara de devolución de llamada es cero de forma predeterminada, lo que significa que el control hace un seguimiento de todos los estados del elemento. Para cambiar este comportamiento predeterminado, inicialice la máscara en cualquier combinación de los siguientes valores:
LVIS_CUT El elemento está marcado para una operación de cortar y pegar.
LVIS_DROPHILITED El elemento está resaltado como destino de arrastrar y colocar.
LVIS_FOCUSED El elemento tiene el foco.
LVIS_SELECTED El elemento está seleccionado.
LVIS_OVERLAYMASK La aplicación almacena el índice de la lista de imágenes de la imagen de superposición actual para cada elemento.
LVIS_STATEIMAGEMASK La aplicación almacena el índice de la lista de imágenes de la imagen del estado actual para cada elemento.
Para más información sobre cómo recuperar y establecer esta máscara, consulte CListCtrl::GetCallbackMask y CListCtrl::SetCallbackMask.