CB_ADDSTRING message

Ajoute une chaîne à la zone de liste d’une zone de liste modifiable. Si la zone de liste déroulante n’a pas le style CBS_SORT , la chaîne est ajoutée à la fin de la liste. Sinon, la chaîne est insérée dans la liste et la liste est triée.

Paramètres

wParam

Ce paramètre n'est pas utilisé.

lParam

Pointeur LPCTSTR vers la chaîne terminée par null à ajouter. Si vous créez la zone de liste déroulante avec un style dessiné par le propriétaire, mais sans le style CBS_HASSTRINGS , la valeur du paramètre lParam est stockée en tant que données d’élément plutôt que sous la forme de la chaîne vers laquelle il pointerait autrement. Les données d’élément peuvent être récupérées ou modifiées en envoyant le message CB_GETITEMDATA ou CB_SETITEMDATA .

Valeur retournée

La valeur de retour est l’index de base zéro de la chaîne dans la zone de liste de la zone de liste modifiable. Si une erreur se produit, la valeur de retour est CB_ERR. Si l’espace disponible est insuffisant pour stocker la nouvelle chaîne, elle est CB_ERRSPACE.

Notes

Si vous créez une zone de liste déroulante dessinée par le propriétaire avec le style CBS_SORT mais sans le style CBS_HASSTRINGS , le message WM_COMPAREITEM est envoyé une ou plusieurs fois au propriétaire de la zone de liste modifiable afin que le nouvel élément puisse être correctement placé dans la liste.

Pour insérer une chaîne à un emplacement spécifique dans la liste, utilisez le message CB_INSERTSTRING .

Si la zone de liste déroulante a WS_HSCROLL style et que vous ajoutez une chaîne plus large que la zone de liste déroulante, envoyez un message LB_SETHORIZONTALEXTENT pour vous assurer que la barre de défilement horizontale s’affiche.

Comclt32.dll version 5.0 ou ultérieure : Si CBS_LOWERCASE ou CBS_UPPERCASE est défini, la version Unicode de CB_ADDSTRING modifie la chaîne. Si vous utilisez la mémoire globale en lecture seule, l’application échoue.

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge
Windows Server 2003 [applications de bureau uniquement]
En-tête
Winuser.h (inclure Windows.h)

Voir aussi

Référence

CB_DIR

CB_INSERTSTRING

LB_SETHORIZONTALEXTENT

WM_COMPAREITEM