Altera o estado de um item em um controle de exibição de lista. Você pode usar essa macro ou enviar a mensagem LVM_SETITEMSTATE explicitamente.
Sintaxe
void ListView_SetItemState(
HWND hwndLV,
int i,
UINT data,
UINT mask
);
Parâmetros
hwndLV
Tipo: HWND
Um identificador para o controle de exibição de lista.
i
Tipo: int
O índice do item de exibição de lista. Se esse parâmetro for -1, a alteração de estado será aplicada a todos os itens.
data
Tipo: UINT
Novos bits de estado para o item. O parâmetro de máscara de indica os bits válidos do parâmetro de dados . A macro ignorará os bits no parâmetro de dados se o bit correspondente não estiver definido no parâmetro de máscara de . O byte de baixa ordem contém um conjunto de sinalizadores de bits que indicam o estado do item. Esse byte pode ser uma combinação dos seguintes valores:
Valor
Significado
LVIS_CUT
O item é marcado para uma operação de recortar e colar.
LVIS_DROPHILITED
O item é realçado como um destino de arrastar e soltar.
LVIS_FOCUSED
O item tem o foco, portanto, ele é cercado por um retângulo de foco padrão. Embora mais de um item possa ser selecionado, apenas um item pode ter o foco.
LVIS_SELECTED
O item está selecionado. A aparência de um item selecionado depende se ele tem o foco e também as cores do sistema usadas para seleção. Os itens só serão exibidos como selecionados se o controle de exibição de lista tiver foco ou o estilo LVS_SHOWSELALWAYS for usado.
mask
Tipo: UINT
Bits do parâmetro de dados que você deseja definir ou limpar. Você pode usar ListView_SetItemState para definir e limpar bits. Para definir o índice de imagem de sobreposição de um item, defina os bits LVIS_OVERLAYMASK. Para definir o índice de imagem de estado de um item, defina os bits LVIS_STATEIMAGEMASK.
Valor de retorno
Nenhum
Observações
O valor de estado de um item inclui um conjunto de sinalizadores de bits que indicam o estado do item. O valor de estado também pode incluir índices de lista de imagens que indicam a imagem de estado do item e a imagem de sobreposição.
O parâmetro máscara de especifica os bits de estado que você deseja modificar e o parâmetro de dados especifica o novo valor para esses bits. Para definir um pouco no estado interno do item, defina-o nos parâmetros de máscara de e de dados. Para limpar um pouco no estado interno do item, defina-o no parâmetro de máscara e desmarque-o no parâmetro de dados . Para deixar um pouco inalterado no estado interno do item, desmarque-o no parâmetro de máscara .
Os bits 8 a 11 do parâmetro de dados especificam o índice baseado em uma imagem de sobreposição nas listas de imagens do controle. A lista de imagens de ícone de tamanho completo e a pequena lista de imagens de ícone podem ter imagens de sobreposição. A imagem de sobreposição é sobreposta sobre a imagem de ícone do item. Se esses bits forem zero, o item não terá nenhuma imagem de sobreposição. Para isolar esses bits, use a máscara de LVIS_OVERLAYMASK. Para especificar um índice de sobreposição, use a macro INDEXTOOVERLAYMASK.
Os bits 12 a 15 do parâmetro de dados especificam o índice baseado em uma imagem na lista de imagens de estado do controle. A imagem de estado é exibida ao lado do ícone de um item para indicar um estado definido pelo aplicativo. Se esses bits forem zero, o item não terá nenhuma imagem de estado. Para isolar esses bits, use a máscara de LVIS_STATEIMAGEMASK. Para especificar um índice de imagem de estado, use a macro INDEXTOSTATEIMAGEMASK.
Requisitos
Requisito
Valor
de cliente com suporte mínimo
Windows Vista [somente aplicativos da área de trabalho]
servidor com suporte mínimo
Windows Server 2003 [somente aplicativos da área de trabalho]