_Message INSERTITEM LVM

Insère un nouvel élément dans un contrôle List-View. Vous pouvez envoyer ce message explicitement ou à l’aide de la macro ListView _ InsertItem .

Paramètres

wParam

Doit être zéro.

lParam

Pointeur vers une structure LVITEM qui spécifie les attributs de l’élément de vue de liste. Utilisez le membre iItem pour spécifier l’index de base zéro auquel le nouvel élément doit être inséré. Si cette valeur est supérieure au nombre d’éléments actuellement contenus dans le ListView, le nouvel élément est ajouté à la fin de la liste et reçoit l’index correct. Examinez la valeur de retour du message pour déterminer l’index réel affecté à l’élément.

Valeur retournée

Retourne l’index du nouvel élément en cas de réussite, ou-1 dans le cas contraire.

Remarques

Vous ne pouvez pas utiliser ListView _ InsertItem ou LVM _ InsertItem pour insérer des sous-éléments. Le membre iSubItem de la structure LVITEM doit être égal à zéro. Pour plus d’informations sur la définition des sous-éléments, consultez _ SETITEM LVM .

Si un contrôle List-View a le style LVS _ ex _ checkboxs défini, toute valeur placée dans les bits 12 à 15 du membre State de la structure LVITEM sera ignorée. Lorsqu’un élément est ajouté avec cet ensemble de styles, il est toujours défini sur l’état désactivé.

Si un contrôle List-View a le style de fenêtre LVS _ SORTASCENDING ou LVS _ SORTDESCENDING , un message _ INSERTITEM de LVM échoue si vous essayez d’insérer un élément dont _ la valeur de LPSTR TEXTCALLBACK est la valeur de son membre pszText .

Le message _ INSERTITEM du LVM insère le nouvel élément à la position appropriée dans l’ordre de tri si les conditions suivantes sont respectées :

  • Vous utilisez l’un des styles LVS _ SORTXXX.
  • Vous n’utilisez pas le style LVS _ OwnerDraw .
  • Le membre pszText de la structure vers laquelle pointe pItem n’a pas la valeur LPSTR _ TEXTCALLBACK.

Si la structure LVITEM ne contient pas LVIF _ GROUPID dans le membre Mask , la valeur du membre iGroupId est I _ GROUPIDCALLBACK par défaut.

Configuration requise

Condition requise Valeur
Client minimal pris en charge
Windows [Applications de bureau Vista uniquement]
Serveur minimal pris en charge
Windows Serveur 2003 [ applications de bureau uniquement]
En-tête
Commctrl. h
Noms Unicode et ANSI
LVM _ INSERTITEMW (Unicode) et LVM _ INSERTITEMA (ANSI)