Valeurs de format

Cette section répertorie les valeurs utilisées avec le paramètre dwTextFlags des fonctions DrawThemeText et GetThemeTextExtent . Une ou plusieurs de ces valeurs sont utilisées pour spécifier la façon dont une chaîne de texte doit être mise en forme. La fonction DrawThemeText dessine la chaîne de texte à l’intérieur d’un rectangle d’affichage, spécifié par le paramètre pRect . La fonction GetThemeTextExtent peut être utilisée pour déterminer le rectangle englobant nécessaire pour le texte d’une longueur et d’un format donnés.

Valeurs de format

Le tableau suivant répertorie les valeurs de format.

Valeur Description
DT_BOTTOM Restitue la chaîne de texte en bas du rectangle d’affichage. Cette valeur est utilisée uniquement avec la valeur DT_SINGLELINE.
DT_CALCRECT Détermine la largeur et la hauteur du rectangle d’affichage.
DT_CENTER Centre le texte horizontalement dans le rectangle d’affichage.
DT_EDITCONTROL Duplique les caractéristiques d’affichage de texte d’un contrôle d’édition multiligne. Plus précisément, la largeur moyenne des caractères est calculée de la même manière que pour un contrôle d’édition, et la fonction n’affiche pas de dernière ligne partiellement visible.
DT_END_ELLIPSIS Tronque une chaîne de texte plus large que le rectangle d’affichage et ajoute des points de suspension pour indiquer la troncation. La chaîne n’est pas modifiée, sauf si l’indicateur DT_MODIFYSTRING est spécifié.
DT_EXPANDTABS Développe des caractères de tabulation. Le nombre par défaut de caractères par tabulation est huit. Les valeurs DT_WORD_ELLIPSIS, DT_PATH_ELLIPSIS et DT_END_ELLIPSIS ne peuvent pas être utilisées avec la valeur DT_EXPANDTABS.
DT_EXTERNALLEADING Inclut le début externe d’une police dans la hauteur de ligne. Normalement, le début externe n’est pas inclus dans la hauteur d’une ligne de texte.
DT_HIDEPREFIX Ignore le caractère & de préfixe dans le texte. La lettre qui suit n’est pas soulignée, mais d’autres caractères de préfixe sont toujours traités. Exemple :
chaîne d’entrée : « A&bc&&d »
normal: « Abc&d »
DT_HIDEPREFIX: « Abc&d »
DT_LEFT Aligne le texte à gauche.
DT_MODIFYSTRING Modifie une chaîne pour qu’elle corresponde au texte affiché. Cette valeur n’a aucun effet, sauf si DT_END_ELLIPSIS ou DT_PATH_ELLIPSIS est spécifié.
DT_NOCLIP Dessine la chaîne de texte sans couper le rectangle d’affichage.
DT_NOFULLWIDTHCHARBREAK Empêche un saut de ligne au niveau d’un jeu de caractères codés sur deux octets (DBCS), de sorte que la règle de saut de ligne équivaut à un jeu de caractères codés sur un octet (SBCS). Cela peut être utilisé, par exemple, pour rendre les étiquettes d’icônes écrites en texte coréen plus lisibles. Cette valeur n’a aucun effet, sauf si DT_WORDBREAK est spécifié.
DT_NOPREFIX Désactive le traitement des caractères de préfixe. Normalement, DrawThemeText interprète le caractère & de préfixe comme une directive pour souligner le caractère qui suit, et les caractères && de préfixe comme une directive pour imprimer un seul &. En spécifiant DT_NOPREFIX, ce traitement est désactivé. Exemple :
chaîne d’entrée : « A&bc&&d »
normal: « Abc&d »
DT_NOPREFIX: « A&bc&&d »
DT_PATH_ELLIPSIS Remplace les caractères au milieu du texte par des points de suspension afin que le résultat s’inscrive dans le rectangle d’affichage. Si la chaîne contient des caractères barre oblique inverse (\), DT_PATH_ELLIPSIS conserve autant que possible le texte après la dernière barre oblique inverse. La chaîne n’est pas modifiée, sauf si l’indicateur DT_MODIFYSTRING est spécifié.
DT_PREFIXONLY Dessine uniquement un trait de soulignement à la position du caractère suivant le caractère &de préfixe . Normalement , DrawThemeText interprète le & comme une directive pour souligner le caractère qui suit et les caractères && de préfixe comme une directive pour imprimer un seul &. En spécifiant DT_PREFIXONLY, aucun caractère n’est dessiné, seulement un trait de soulignement. Les espaces blancs sont placés dans les emplacements où les caractères apparaissent normalement. Exemple :
chaîne d’entrée : « A&bc&&d »
normal: « Abc&d
DT_PREFIXONLY: " »
DT_RIGHT Aligne le texte à droite.
DT_RTLREADING Dispose le texte dans l’ordre de droite à gauche pour le texte bidirectionnel, par exemple le texte dans une police hébraïque ou arabe. La direction par défaut du texte est de gauche à droite.
DT_SINGLELINE Affiche le texte sur une seule ligne. Les retours chariots et les sauts de ligne n’interrompent pas la ligne.
DT_TABSTOP Définit les taquets de tabulation.
DT_TOP Restitue le texte en haut du rectangle d’affichage.
DT_VCENTER Centre le texte verticalement. Cette valeur est utilisée uniquement avec la valeur DT_SINGLELINE.
DT_WORDBREAK Divise les lignes entre les mots si un mot dépasse le bord du rectangle d’affichage. Une séquence retour chariot/saut de ligne (CR/LF) interrompt également la ligne.
DT_WORD_ELLIPSIS Tronque tout mot qui ne tient pas dans le rectangle d’affichage et ajoute des points de suspension.