Compartilhar via


Itens e máscara de retorno de chamada

Para cada um de seus itens, um controle de exibição de lista normalmente armazena o texto do rótulo, o índice de lista de imagens dos ícones do item e um conjunto de sinalizadores de bits para o estado do item. Você pode definir itens individuais como itens de callback, que são úteis caso seu aplicativo já armazene algumas informações de um item.

Você define um item como um item de retorno de chamada especificando valores apropriados para os membros pszText e iImage da estrutura LVITEM (consulte CListCtrl::GetItem). Se o aplicativo mantiver o texto do item ou do subitem, especifique o valor LPSTR_TEXTCALLBACK no membro pszText. Se o aplicativo rastrear o ícone do item, especifique o valor I_IMAGECALLBACK para o membro iImage.

Além de definir itens de callback, você também pode ajustar a máscara de callback do controle. Essa máscara é um conjunto de sinalizadores de bits que especificam os estados de item para os quais o aplicativo, em vez do controle, armazena os dados atuais. A máscara de retorno de chamada se aplica a todos os itens do controle, diferente da designação do item de retorno de chamada, que se aplica a um item específico. A máscara de retorno de chamada é zero por padrão, o que significa que o controle rastreia todos os estados do item. Para alterar esse comportamento padrão, inicialize a máscara para qualquer combinação dos seguintes valores:

  • LVIS_CUT O item é marcado para uma operação de recortar e colar.

  • LVIS_DROPHILITED O item é realçado como um destino para arrastar e soltar.

  • LVIS_FOCUSED O item está em foco.

  • LVIS_SELECTED O item está selecionado.

  • LVIS_OVERLAYMASK O aplicativo armazena o índice de lista de imagens da imagem de sobreposição atual para cada item.

  • LVIS_STATEIMAGEMASK O aplicativo armazena o índice de lista de imagens da imagem de estado atual para cada item.

Para obter mais informações sobre como recuperar e definir essa máscara, consulte CListCtrl::GetCallbackMask e CListCtrl::SetCallbackMask.

Consulte também

Usando CListCtrl
Controles