LOGBRUSH

【勇芳软件工作室】汉化HomePreviousNext

LOGBRUSH结构定义了物理画笔的样式,颜色和图案。它由CreateBrushIndirectExtCreatePen功能使用。

typedef struct tagLOGBRUSH { // lb

UINT lbStyle;

COLORREF lbColor;

LONG lbHatch;

} LOGBRUSH;

会员

lbStyle

指定画笔样式。lbStyle成员必须是以下样式之一:

含义
BS_DIBPATTERN由与设备无关的位图(DIB)规范定义的图案画笔。如果lbStyle是BS_DIBPATTERN,lbHatch成员包含一个打包DIB的句柄。

Windows 95:不支持从位图大于8x8像素的DIB创建画笔。如果给出较大的位图,则仅使用位图的一部分。

BS_DIBPATTERN8X8与BS_DIBPATTERN相同。
BS_DIBPATTERNPT由与设备无关的位图(DIB)规范定义的图案画笔。如果lbStyle是BS_DIBPATTERNPT,则lbHatch成员包含指向打包DIB的指针。
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_DIBPATTERNBT,则lbColor的低位字指定BITMAPINFO结构的bmiColors成员是否将明确的红,绿,蓝(RGB)值或索引包含到当前实现的逻辑调色板中。lbColor成员必须是以下值之一:

含义
DIB_PAL_COLORS颜色表由当前实现的逻辑调色板中的16位索引的数组组成。
DIB_RGB_COLORS颜色表包含文字RGB值。

lbHatch

指定一个填充样式。意思取决于lbStyle定义的画笔风格。

如果lbStyle是BS_DIBPATTERN,则lbHatch成员包含一个打包DIB的句柄。如果lbStyle是BS_DIBPATTERNPT,则lbHatch成员包含指向打包DIB的指针。

如果lbStyle为BS_HATCHED,则lbHatch成员指定用于创建舱口的线的方向。它可以是以下值之一:

含义
HS_BDIAGONAL一个45度向上,从左到右的舱口
HS_CROSS水平和垂直交叉
HS_DIAGCROSS45度交叉阴影
HS_FDIAGONAL一个45度向下,从左到右的舱口
HS_HORIZONTAL水平舱口
HS_VERTICAL垂直孵化

如果lbStyle是BS_PATTERN,lbHatch是定位模式的位图的句柄。位图不能是由CreateDIBSection函数创建的DIB部分位图。

如果lbStyle为BS_SOLID或BS_HOLLOW,lbHatch将被忽略。

备注

虽然lbColor控制了一个填充画笔的前景色,SetBkModeSetBkColor功能可以控制背景颜色。

也可以看看

BITMAPINFO, CreateBrushIndirect, CreateDIBSection, ExtCreatePen, SetBkColor, SetBkMode