Partager via


macro ListView_SetItemState (commctrl.h)

Modifie l’état d’un élément dans un contrôle d’affichage de liste. Vous pouvez utiliser cette macro ou envoyer explicitement le message LVM_SETITEMSTATE.

Syntaxe

void ListView_SetItemState(
   HWND hwndLV,
   int  i,
   UINT data,
   UINT mask
);

Paramètres

hwndLV

Type : HWND

Handle du contrôle list-view.

i

Type : int

Index de l’élément d’affichage de liste. Si ce paramètre est -1, la modification de l’état est appliquée à tous les éléments.

data

Type : UINT

Nouveaux bits d’état pour l’élément. Le paramètre masque indique les bits valides du paramètre de données. La macro ignore les bits du paramètre de de données si le bit correspondant n’est pas défini dans le paramètre masque de . L’octet de faible ordre contient un ensemble d’indicateurs de bits qui indiquent l’état de l’élément. Cet octet peut être une combinaison des valeurs suivantes :

Valeur Signification
LVIS_CUT
L’élément est marqué pour une opération couper-coller.
LVIS_DROPHILITED
L’élément est mis en surbrillance en tant que cible de glisser-déplacer.
LVIS_FOCUSED
L’élément a le focus. Il est donc entouré d’un rectangle de focus standard. Bien que plusieurs éléments puissent être sélectionnés, un seul élément peut avoir le focus.
LVIS_SELECTED
L’élément est sélectionné. L’apparence d’un élément sélectionné dépend du focus et des couleurs système utilisées pour la sélection. Les éléments s’affichent uniquement comme sélectionnés si le contrôle d’affichage de liste a le focus ou si le style LVS_SHOWSELALWAYS est utilisé.

mask

Type : UINT

Bits du paramètre de données que vous souhaitez définir ou effacer. Vous pouvez utiliser ListView_SetItemState à la fois pour définir et effacer les bits. Pour définir l’index d’image de superposition d’un élément, définissez les LVIS_OVERLAYMASK bits. Pour définir l’index d’image d’état d’un élément, définissez les bits LVIS_STATEIMAGEMASK.

Valeur de retour

Aucun

Remarques

La valeur d’état d’un élément inclut un ensemble d’indicateurs de bits qui indiquent l’état de l’élément. La valeur d’état peut également inclure des index de liste d’images qui indiquent l’image d’état de l’élément et l’image de superposition.

Le masque paramètre spécifie les bits d’état que vous souhaitez modifier, et le paramètre données spécifie la nouvelle valeur pour ces bits. Pour définir un bit dans l’état interne de l’élément, définissez-le dans les paramètres de de masque de et de données . Pour effacer un bit dans l’état interne de l’élément, définissez-le dans le paramètre masque et effacez-le dans le paramètre de données. Pour laisser un bit inchangé dans l’état interne de l’élément, effacez-le dans le paramètre masque.

Bits 8 à 11 du paramètre de données spécifiez l’index d’une image de superposition dans les listes d’images du contrôle. La liste d’images d’icône de taille complète et la petite liste d’images d’icône peuvent avoir des images superposées. L’image de superposition est superposée sur l’image d’icône de l’élément. Si ces bits sont zéro, l’élément n’a pas d’image de superposition. Pour isoler ces bits, utilisez le masque de LVIS_OVERLAYMASK. Pour spécifier un index de superposition, utilisez la macro INDEXTOOVERLAYMASK .

Bits 12 à 15 du paramètre de données spécifiez l’index uni-basé d’une image dans la liste d’images d’état du contrôle. L’image d’état s’affiche en regard de l’icône d’un élément pour indiquer un état défini par l’application. Si ces bits sont zéro, l’élément n’a aucune image d’état. Pour isoler ces bits, utilisez le masque LVIS_STATEIMAGEMASK. Pour spécifier un index d’image d’état, utilisez la macro INDEXTOSTATEIMAGEMASK.

Exigences

Exigence Valeur
client minimum pris en charge Windows Vista [applications de bureau uniquement]
serveur minimum pris en charge Windows Server 2003 [applications de bureau uniquement]
plateforme cible Windows
d’en-tête commctrl.h

Voir aussi

ListView_GetItemState