小甲鱼 发表于 2014-11-6 12:51:21

CreateHatchBrush

函数功能:

CreateHatchBrush 函数用于创建一个具有指定阴影样式和颜色的逻辑刷子。


API 函数原型:

注释:_In_ 说明该参数是输入的。
HBRUSH CreateHatchBrush(
_In_int fnStyle,
_In_COLORREF clrref
);

参数解析:


参数 含义
fnStyle 指定画刷的阴影样式(具体请看下方)
clrref 1. 指定用于画刷阴影的前景色
2. RGB 颜色使用 RGB 宏生成 COLORREF 结构


fnStyle 参数指定画刷的阴影样式如下:


值 含义
HS_BDIAGONAL 45 度向上,从左至右的阴影
HS_CROSS 水平和垂直交叉阴影
HS_DIAGCROSS 45 度交叉阴影
HS_FDIAGONAL 45 度向下,自左至右阴影
HS_HORIZONTAL 水平阴影
HS_VERTICAL 垂直阴影

样式具体显示如下:




返回值:

1. 如果函数调用成功,返回值是新画刷的句柄;

2. 如果函数调用失败,返回值是 NULL。


备注:

1. 阴影画刷实际上就是指系统用来绘制要填充图形的内部区域的位图。

2. 调用该函数创建新画刷之后,可以使用 SelectObject函数将新画刷选入设备环境中。

3. 调用 SetBkColor 函数可以修改画刷图案的背景色。

4. 调用 SetBkMode 函数可以影响搞该阴影画刷的渲染效果(如果是 OPAQUE 模式,背景颜色被用来填充线与线之间的空隙;如果是 TRANSPARENT 模式,Windows 就只画出阴影线,不填充它们之间的空隙)。

5. 如果应用程序使用带阴影的刷子,用合适的颜色填充父窗口和子窗口的背景,那么在绘刷子窗口的背景之前,有可能需要设置刷子的起始点。要做到这一点,可以在应用程序中调用 SetBrushOrgEx 函数。

6. 如果你再也不需要该画刷,可以使用 DeleteObject 函数将其删除。

ICM:在创建刷子时没有颜色,然而在把该刷子选入到ICM许可的设备环境中时,将会完成颜色管理。

WinSDK

!@R键! 发表于 2015-1-10 17:53:14

我是一楼,有奖励吗?:ton::lol:

Sayuqwq 发表于 2023-6-5 18:48:05

{:10_256:}
页: [1]
查看完整版本: CreateHatchBrush