WM_GETTEXTLENGTH message
Détermine la longueur, en caractères, du texte associé à une fenêtre.
#define WM_GETTEXTLENGTH 0x000E
Paramètres
-
wParam
-
Ce paramètre n’est pas utilisé et doit être égal à zéro.
-
lParam
-
Ce paramètre n’est pas utilisé et doit être égal à zéro.
Valeur retournée
Type : LRESULT
La valeur de retour correspond à la longueur du texte en caractères, sans compter le caractère null de fin.
Notes
Pour un contrôle d’édition, le texte à copier est le contenu du contrôle d’édition. Pour une zone de liste déroulante, le texte est le contenu de la partie de contrôle d’édition (ou texte statique) de la zone de liste déroulante. Pour un bouton, le texte est le nom du bouton. Pour les autres fenêtres, le texte est le titre de la fenêtre. Pour déterminer la longueur d’un élément dans une zone de liste, une application peut utiliser le message LB_GETTEXTLEN .
Lorsque le message WM_GETTEXTLENGTH est envoyé, la fonction DefWindowProc retourne la longueur, en caractères, du texte. Dans certaines conditions, la fonction DefWindowProc retourne une valeur supérieure à la longueur réelle du texte. Cela se produit avec certains mélanges d’ANSI et d’Unicode, et est dû au système permettant l’existence possible de caractères de jeu de caractères d’octets doubles (DBCS) dans le texte. Toutefois, la valeur de retour sera toujours au moins aussi grande que la longueur réelle du texte ; vous pouvez donc toujours l’utiliser pour guider l’allocation de mémoire tampon. Ce comportement peut se produire lorsqu’une application utilise à la fois des fonctions ANSI et des boîtes de dialogue courantes, qui utilisent Unicode.
Pour obtenir la longueur exacte du texte, utilisez les messages WM_GETTEXT, LB_GETTEXT ou CB_GETLBTEXT , ou la fonction GetWindowText .
L’envoi d’un message WM_GETTEXTLENGTH à un contrôle statique non textuel, tel qu’une image bitmap statique ou un contrôle d’icône statiquec, ne retourne pas de valeur de chaîne. Au lieu de cela, il retourne zéro.
Spécifications
Condition requise | Valeur |
---|---|
Client minimal pris en charge |
Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge |
Windows 2000 Server [applications de bureau uniquement] |
En-tête |
|
Voir aussi
-
Référence
-
Conceptuel
-
Autres ressources