GetTabbedTextExtentA, fonction (winuser.h)
La fonction GetTabbedTextExtent calcule la largeur et la hauteur d’une chaîne de caractères. Si la chaîne contient un ou plusieurs caractères de tabulation, la largeur de la chaîne est basée sur les taquets de tabulation spécifiés. La fonction GetTabbedTextExtent utilise la police actuellement sélectionnée pour calculer les dimensions de la chaîne.
Syntaxe
DWORD GetTabbedTextExtentA(
[in] HDC hdc,
[in] LPCSTR lpString,
[in] int chCount,
[in] int nTabPositions,
[in] const INT *lpnTabStopPositions
);
Paramètres
[in] hdc
Handle vers le contexte de l’appareil.
[in] lpString
Pointeur vers une chaîne de caractères.
[in] chCount
Longueur de la chaîne de texte. Pour la fonction ANSI, il s’agit d’un nombre BYTE et pour la fonction Unicode, il s’agit d’un nombre WORD. Notez que pour la fonction ANSI, les caractères des pages de codes SBCS prennent chacun un octet, tandis que la plupart des caractères des pages de codes DBCS prennent deux octets ; pour la fonction Unicode, les caractères Unicode les plus définis (ceux du plan multilingue de base (BMP)) sont un WORD tandis que les substitutions Unicode sont deux WORD.
[in] nTabPositions
Nombre de positions de taquet de tabulation dans le tableau pointé par le paramètre lpnTabStopPositions.
[in] lpnTabStopPositions
Pointeur vers un tableau contenant les positions de taquet de tabulation, dans les unités d’appareil. Les taquets de tabulation doivent être triés dans l’ordre croissant ; la plus petite valeur x doit être le premier élément du tableau.
Valeur de retour
Si la fonction réussit, la valeur de retour est les dimensions de la chaîne en unités logiques. La hauteur se trouve dans le mot de haut ordre et la largeur se trouve dans le mot de bas ordre.
Si la fonction échoue, la valeur de retour est 0. GetTabbedTextExtent échoue si hDC n’est pas valide et si nTabPositions est inférieur à 0.
Remarques
La zone de découpage actuelle n’affecte pas la largeur et la hauteur retournées par la fonction GetTabbedTextExtent.
Étant donné que certains appareils ne placent pas de caractères dans des tableaux de cellules réguliers (autrement dit, ils kènent les caractères), la somme des étendues des caractères d’une chaîne peut ne pas être égale à l’étendue de la chaîne.
Si le paramètre nTabPositions
Si nTabPositions est 1, les taquets de tabulation sont séparés par la distance spécifiée par la première valeur du tableau à laquelle lpnTabStopPositions points.
Note
L’en-tête winuser.h définit GetTabbedTextExtent comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
serveur minimum pris en charge | Windows 2000 Server [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | winuser.h (include Windows.h) |
bibliothèque | User32.lib |
DLL | User32.dll |
Voir aussi
fonctions de police et de texte