Функция GrayStringA (winuser.h)
Функция GrayString рисует серый текст в указанном расположении. Функция рисует текст путем копирования его в растровое изображение памяти, серого растрового изображения, а затем копирования растрового изображения на экран. Функция сереет текст независимо от выбранной кисти и фона. GrayString использует шрифт, выбранный в данный момент для указанного контекста устройства.
Если параметр thelpOutputFuncparameter NULL, GDI использует функцию TextOut, а функция thelpDataparameter считается указателем на строку символов для вывода. Если выходные данные не могут обрабатываться TextOut (например, строка хранится в виде растрового изображения), приложение должно предоставить собственную выходную функцию.
Синтаксис
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
);
Параметры
[in] hDC
Дескриптор контекста устройства.
[in] hBrush
Дескриптор кисти, который будет использоваться для серого цвета. Если этот параметр NULL, текст серый с той же кистью, которая использовалась для рисования текста окна.
[in] lpOutputFunc
Указатель на определяемую приложением функцию, которая будет рисовать строку или, если TextOut используется для рисования строки, это указатель NULL. Дополнительные сведения см. в функции обратного вызова OutputProc.
[in] lpData
Указатель на данные, передаваемые в выходную функцию. Если параметр lpOutputFuncNULL, lpData должен быть указателем на строку для вывода.
[in] nCount
Число выходных данных символов. Если параметр nCount равен нулю, GrayString вычисляет длину строки (если lpData является указателем на строку). Если nCount равно 1, а функция, на которую указывает lpOutputFunc возвращается FALSE, изображение отображается, но не серое.
[in] X
Координата устройства x начальной позиции прямоугольника, включающего строку.
[in] Y
Координата устройства y начальной позиции прямоугольника, включающего строку.
[in] nWidth
Ширина в единицах устройства прямоугольника, заключающая строку. Если этот параметр равен нулю, GrayString вычисляет ширину области, при условии, что lpData является указателем на строку.
[in] nHeight
Высота в единицах устройства прямоугольника, заключающего строку. Если этот параметр равен нулю, GrayString вычисляет высоту области, при условии, что lpData является указателем на строку.
Возвращаемое значение
Если строка рисуется, возвращаемое значение ненулевое.
Если функция textOut
Замечания
Без вызова GrayStringприложение может нарисовать серые строки на устройствах, поддерживающих сплошной серый цвет. Системный цвет COLOR_GRAYTEXT — это цвет сплошной серой системы, используемый для рисования отключенного текста. Приложение может вызвать функцию GetSysColor, чтобы получить значение цвета COLOR_GRAYTEXT. Если цвет отличается от нуля (черного), приложение может вызвать функцию SetTextColor, чтобы задать цвет текста значением цвета, а затем нарисовать строку напрямую. Если извлеченный цвет является черным, приложение должно вызывать GrayString серым текстом.
Заметка
Заголовок winuser.h определяет GrayString как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 Профессиональный [только классические приложения] |
минимальный поддерживаемый сервер | Windows 2000 Server [только классические приложения] |
целевая платформа | Виндоус |
заголовка | winuser.h (включая Windows.h) |
библиотеки |
User32.lib |
DLL | User32.dll |
См. также
обзор
tabbedTextOut