Структура LOGBRUSH (wingdi.h)
Структура LOGBRUSH определяет стиль, цвет и узор физической кисти. Он используется функциями CreateBrushIndirect и ExtCreatePen .
Синтаксис
typedef struct tagLOGBRUSH {
UINT lbStyle;
COLORREF lbColor;
ULONG_PTR lbHatch;
} LOGBRUSH, *PLOGBRUSH, *NPLOGBRUSH, *LPLOGBRUSH;
Члены
lbStyle
Стиль кисти. Элемент lbStyle должен иметь один из следующих стилей.
Значение | Значение |
---|---|
BS_DIBPATTERN | Кисть шаблона, определяемая спецификацией аппаратно-независимого растрового изображения (DIB). Если lbStyle BS_DIBPATTERN, элемент lbHatch содержит дескриптор упакованного DIB. Дополнительные сведения см. в разделе обсуждение в lbHatch. |
BS_DIBPATTERN8X8 | См. BS_DIBPATTERN. |
BS_DIBPATTERNPT | Кисть шаблона, определяемая спецификацией аппаратно-независимого растрового изображения (DIB). Если lbStyle BS_DIBPATTERNPT, элемент lbHatch содержит указатель на упакованную DIB. Дополнительные сведения см. в разделе обсуждение в lbHatch. |
BS_HATCHED | Вылупилась кисть. |
BS_HOLLOW | Полая кисть. |
BS_NULL | То же, что и BS_HOLLOW. |
BS_PATTERN | Кисть шаблона, определяемая растровым изображением памяти. |
BS_PATTERN8X8 | См. BS_PATTERN. |
BS_SOLID | Сплошная кисть. |
lbColor
Цвет, в котором должна быть нарисована кисть. Если lbStyle является BS_HOLLOW или BS_PATTERN стилем, lbColor игнорируется.
Если lbStyle является BS_DIBPATTERN или BS_DIBPATTERNPT, слово нижнего порядка lbColor указывает, содержат ли элементы bmiColors структуры BITMAPINFO явные красные, зеленые, синие (RGB) значения или индексы в текущей реализованной логической палитре. Элемент lbColor должен иметь одно из следующих значений.
Значение | Значение |
---|---|
DIB_PAL_COLORS | Таблица цветов состоит из массива 16-разрядных индексов в реализованной в настоящее время логической палитре. |
DIB_RGB_COLORS | Таблица цветов содержит литеральные значения RGB. |
Если lbStyle имеет значение BS_HATCHED или BS_SOLID, lbColor — это значение цвета COLORREF . Чтобы создать значение цвета COLORREF , используйте макрос RGB .
lbHatch
Стиль штриховки. Значение зависит от стиля кисти, определенного в lbStyle.
Если lbStyle BS_DIBPATTERN, элемент lbHatch содержит дескриптор упакованного DIB. Чтобы получить этот дескриптор, приложение вызывает функцию GlobalAlloc с GMEM_MOVEABLE (или LocalAlloc с LMEM_MOVEABLE), чтобы выделить блок памяти, а затем заполняет память упакованным DIB. Упакованный DIB состоит из структуры BITMAPINFO , за которой сразу же следует массив байтов, определяющий пиксели растрового изображения.
Если lbStyle BS_DIBPATTERNPT, элемент lbHatch содержит указатель на упакованную DIB. Указатель является производным от блока памяти, созданного Методом LocalAlloc с LMEM_FIXED задано или GlobalAlloc с GMEM_FIXED, или это указатель, возвращаемый вызовом LocalLock (handle_to_the_dib). Упакованный DIB состоит из структуры BITMAPINFO , за которой сразу же следует массив байтов, определяющий пиксели растрового изображения.
Если lbStyle BS_HATCHED, то элемент lbHatch задает ориентацию линий, используемых для создания штриховки. Может быть одним из указанных далее.
Значение | Значение |
---|---|
HS_BDIAGONAL | Люк на 45 градусов вверх слева направо |
HS_CROSS | Горизонтальное и вертикальное перекрестное люк |
HS_DIAGCROSS | 45-градусный перекрестие |
HS_FDIAGONAL | Люк на 45 градусов вниз, слева направо |
HS_HORIZONTAL | Горизонтальный люк |
HS_VERTICAL | Вертикальный люк |
Если lbStyle BS_PATTERN, lbHatch — это дескриптор растрового изображения, определяющего шаблон. Растровое изображение не может быть растровым изображением раздела DIB, которое создается функцией CreateDIBSection .
Если lbStyle BS_SOLID или BS_HOLLOW, lbHatch игнорируется.
Комментарии
Хотя lbColor управляет цветом переднего плана кисти штриховки, функции SetBkMode и SetBkColor управляют цветом фона.
Требования
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Верхняя часть | wingdi.h (включая Windows.h) |