GrayStringA, fonction (winuser.h)
La fonction GrayString dessine le texte gris à l’emplacement spécifié. La fonction dessine le texte en le copiant dans une image bitmap en mémoire, en grisant la bitmap, puis en copiant la bitmap sur l’écran. La fonction grise le texte quels que soient le pinceau et l’arrière-plan sélectionnés. GrayString utilise la police actuellement sélectionnée pour le contexte d’appareil spécifié.
Si thelpOutputFuncparameter a la valeur NULL, GDI utilise la fonction TextOut et thelpDataparameter est supposé être un pointeur vers la chaîne de caractères à générer. Si les caractères à générer ne peuvent pas être gérés par TextOut (par exemple, la chaîne est stockée sous forme de bitmap), l’application doit fournir sa propre fonction de sortie.
Syntaxe
BOOL GrayStringA(
[in] HDC hDC,
[in] HBRUSH hBrush,
[in] GRAYSTRINGPROC lpOutputFunc,
[in] LPARAM lpData,
[in] int nCount,
[in] int X,
[in] int Y,
[in] int nWidth,
[in] int nHeight
);
Paramètres
[in] hDC
Handle pour le contexte de l’appareil.
[in] hBrush
Poignée au pinceau à utiliser pour le grisage. Si ce paramètre a la valeur NULL, le texte est grisé avec le même pinceau que celui utilisé pour dessiner le texte de la fenêtre.
[in] lpOutputFunc
Pointeur vers la fonction définie par l’application qui dessine la chaîne ou, si TextOut doit être utilisé pour dessiner la chaîne, il s’agit d’un pointeur NULL . Pour plus d’informations, consultez la fonction de rappel OutputProc .
[in] lpData
Pointeur vers les données à passer à la fonction de sortie. Si le paramètre lpOutputFunc a la valeur NULL, lpData doit être un pointeur vers la chaîne à générer.
[in] nCount
Nombre de caractères à sortir. Si le paramètre nCount est égal à zéro, GrayString calcule la longueur de la chaîne (en supposant que lpData est un pointeur vers la chaîne). Si nCount a la valeur 1 et que la fonction pointée par lpOutputFunc retourne FALSE, l’image est affichée mais non grisée.
[in] X
Coordonnée x de l’appareil de la position de départ du rectangle qui entoure la chaîne.
[in] Y
Coordonnée y de l’appareil de la position de départ du rectangle qui entoure la chaîne.
[in] nWidth
Largeur, en unités d’appareil, du rectangle qui entoure la chaîne. Si ce paramètre est égal à zéro, GrayString calcule la largeur de la zone, en supposant que lpData est un pointeur vers la chaîne.
[in] nHeight
Hauteur, en unités d’appareil, du rectangle qui entoure la chaîne. Si ce paramètre est égal à zéro, GrayString calcule la hauteur de la zone, en supposant que lpData est un pointeur vers la chaîne.
Valeur retournée
Si la chaîne est dessinée, la valeur de retour est différente de zéro.
Si la fonction TextOut ou la fonction de sortie définie par l’application a retourné zéro, ou si la mémoire était insuffisante pour créer une bitmap de mémoire pour le grisage, la valeur de retour est zéro.
Remarques
Sans appeler GrayString, une application peut dessiner des chaînes grisées sur des appareils qui prennent en charge une couleur grise unie. La couleur système COLOR_GRAYTEXT est la couleur système gris unie utilisée pour dessiner du texte désactivé. L’application peut appeler la fonction GetSysColor pour récupérer la valeur de couleur de COLOR_GRAYTEXT. Si la couleur est différente de zéro (noir), l’application peut appeler la fonction SetTextColor pour définir la couleur du texte sur la valeur de couleur, puis dessiner la chaîne directement. Si la couleur récupérée est noire, l’application doit appeler GrayString pour griser le texte.
Notes
L’en-tête winuser.h définit GrayString en tant qu’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. La combinaison 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.
Configuration requise
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] |
Plateforme cible | Windows |
En-tête | winuser.h (inclure Windows.h) |
Bibliothèque | User32.lib |
DLL | User32.dll |
Voir aussi
Fonctions de peinture et de dessin