Partager via


CDC::GrayString

Draws est grisé (grisez) du texte à l'emplacement donné en écrivant du texte dans une bitmap en mémoire, en estompant la bitmap, puis en copiant la bitmap à afficher.

virtual BOOL GrayString( 
   CBrush* pBrush, 
   BOOL ( CALLBACK* lpfnOutput )( HDC, LPARAM, int ), 
   LPARAM lpData, 
   int nCount, 
   int x, 
   int y, 
   int nWidth, 
   int nHeight 
);

Paramètres

  • pBrush
    Identifie le pinceau à utiliser pour estomper (griser).

  • lpfnOutput
    Spécifie l'adresse de procédure-instance de la fonction de rappel fournie par l'application qui dessinera la chaîne. Pour plus d'informations, consultez la description des fenêtres OutputFunc fonction de rappel. Si ce paramètre est NULL, le système utilise la fonction d' TextOut windows pour dessiner la chaîne, et considéré comme lpData est un long pointeur à la chaîne de sortie.

  • lpData
    Spécifie un pointeur lointain aux données à passer à la fonction de sortie. Si lpfnOutput est NULL, lpData doit être un pointeur long à la chaîne de sortie.

  • nCount
    Spécifie le nombre de caractères à la sortie. Si ce paramètre est 0, GrayString calcule la longueur de la chaîne (en supposant qu' lpData est un pointeur vers une chaîne). Si nCount est à 1 et la fonction pointée pointe vers lpfnOutput retourne 0, l'image est affiché mais non grisé.

  • x
    Spécifie la coordonnée x logique de la position de départ du rectangle qui englobe la chaîne.

  • y
    Spécifie l'ordonnée logique de la position de départ du rectangle qui englobe la chaîne.

  • nWidth
    Spécifie la largeur (en unités logiques) du rectangle qui englobe la chaîne. Si nWidth est 0, GrayString calcule la largeur de la zone, si la lpData est un pointeur vers une chaîne.

  • nHeight
    Spécifie la hauteur (en unités logiques) du rectangle qui englobe la chaîne. Si nHeight est 0, GrayString calcule la hauteur de la zone, si la lpData est un pointeur vers une chaîne.

Valeur de retour

Une valeur différente de zéro si la chaîne est dessinée, ou 0 si la fonction d' TextOut ou la fonction de sortie fournie par l'application a retourné 0, ou s'il y avait mémoire insuffisante pour créer une bitmap en mémoire pour estomper.

Notes

La fonction estompe le texte indépendamment du pinceau et d'arrière-plan sélectionnés. La fonction membre d' GrayString utilise la police sélectionnée. Le mode de mappage d' MM_TEXT doit être sélectionné avant d'utiliser cette fonction.

Une application peut dessiner des chaînes (estompées) estompées sur les appareils qui prennent en charge une couleur de gris de unie sans appeler la fonction membre d' GrayString . La couleur système COLOR_GRAYTEXT est la couleur système de solide- gris utilisée pour dessiner des désactivé texte. L'application peut appeler la fonction Windows de GetSysColor pour récupérer la valeur de couleur de COLOR_GRAYTEXT. Si la couleur est autre que 0 (noir), l'application peut appeler la fonction membre d' SetTextColor pour définir la couleur du texte à la valeur de couleur puis pour dessiner la chaîne directement. Si la couleur est récupérée noire, l'application doit appeler GrayString pour estomper (gris) du texte.

Si lpfnOutput est NULL, GDI utilise la fonction de TextOut windows, et considéré comme lpData est un pointeur lointain au caractère à la sortie. Si les caractères à sortir ne peuvent pas être gérés par la fonction membre d' TextOut (par exemple, la chaîne est stockée en tant que bitmap), l'application doit fournir sa propre fonction de sortie.

Notez également que toutes les fonctions de rappel doit intercepter des exceptions Microsoft Foundation avant de revenir à windows, comme les exceptions ne peuvent pas être levées au delà de les limites de rappel. Pour plus d'informations sur les exceptions, consultez l'article exceptions.

La fonction de rappel réussi à GrayString doit utiliser la convention d'appel d' __stdcall et doit être exportée à __declspec.

Lorsque l'infrastructure est en mode d'aperçu, un appel à la fonction membre d' GrayString est traduit dans un appel d' TextOut , et la fonction de rappel n'est pas appelée.

Configuration requise

Header: afxwin.h

Voir aussi

Référence

CDC, classe

Graphique de la hiérarchie

GetSysColor

CDC::SetTextColor

CDC::TextOut

GrayString