IMAGELISTDRAWPARAMS 结构 (commctrl.h)
包含有关图像列表绘制操作的信息,并与 IImageList::D raw 函数一起使用。
语法
typedef struct _IMAGELISTDRAWPARAMS {
DWORD cbSize;
HIMAGELIST himl;
int i;
HDC hdcDst;
int x;
int y;
int cx;
int cy;
int xBitmap;
int yBitmap;
COLORREF rgbBk;
COLORREF rgbFg;
UINT fStyle;
DWORD dwRop;
DWORD fState;
DWORD Frame;
COLORREF crEffect;
} IMAGELISTDRAWPARAMS, *LPIMAGELISTDRAWPARAMS;
成员
cbSize
类型: DWORD
此结构的大小(以字节为单位)。
himl
类型: HIMAGELIST
包含要绘制的图像的图像列表的句柄。
i
类型: int
要绘制的图像的从零开始的索引。
hdcDst
类型: HDC
目标设备上下文的句柄。
x
类型: int
指定图像绘制位置的 x 坐标。
y
类型: int
指定图像绘制位置的 y 坐标。
cx
类型: int
一个 值,该值指定要绘制的像素数(相对于 xBitmap 和 yBitmap 指定的绘制操作的左上角)。 如果 cx 和 cy 为零,则 Draw 将绘制整个有效部分。 方法不确保参数有效。
cy
类型: int
一个 值,该值指定要绘制的像素数(相对于 xBitmap 和 yBitmap 指定的绘制操作的左上角)。 如果 cx 和 cy 为零,则 Draw 将绘制整个有效部分。 方法不确保参数有效。
xBitmap
类型: int
指定引用图像本身时绘制操作左上角的 x 坐标。 xBitmap 左侧和 yBitmap 上方的图像像素不会显示。
yBitmap
类型: int
y 坐标,指定引用图像本身时绘制操作的左上角。 xBitmap 左侧和 yBitmap 上方的图像像素不会显示。
rgbBk
类型: COLORREF
图像背景色。 此参数可以是应用程序定义的 RGB 值或以下值之一。
值 | 含义 |
---|---|
|
默认背景色。 使用图像列表背景色绘制图像。 |
|
无背景色。 以透明方式绘制图像。 |
rgbFg
类型: COLORREF
图像前景色。 仅当 fStyle 包含 ILD_BLEND25 或 ILD_BLEND50 标志时,才使用此成员。 此参数可以是应用程序定义的 RGB 值或以下值之一:
值 | 含义 |
---|---|
|
默认前景色。 使用系统突出显示颜色作为前景颜色绘制图像。 |
|
无混合颜色。 图像与目标设备上下文的颜色混合。 |
fStyle
类型: UINT
一个标志,用于指定绘图样式以及(可选)覆盖图像。 有关覆盖图像的信息,请参阅本主题末尾的注释部分。 此成员可以包含一个或多个 图像列表绘图标志。
dwRop
类型: DWORD
一个指定光栅操作代码的值。 这些代码定义如何将源矩形的颜色数据与目标矩形的颜色数据组合以实现最终颜色。 如果 fStyle 不包含 ILD_ROP 标志,则忽略此成员。 一些常见的光栅操作代码包括:
fState
类型: DWORD
一个指定绘图状态的标志。 此成员可以包含一个或多个 图像列表状态标志。 必须使用comctl32.dll版本 6 才能使用此成员。 请参阅备注。
Frame
类型: DWORD
与 alpha 混合效果一 起使用。
与 ILS_ALPHA 一起使用时,此成员保留 alpha 通道的值。 此值可以为 0-255,0 表示完全透明,255 表示完全不透明。
必须使用comctl32.dll版本 6 才能使用此成员。 请参阅备注。
crEffect
类型: DWORD
用于 发光 和 阴影 效果的颜色。 必须使用comctl32.dll版本 6 才能使用此成员。 请参阅备注。
备注
覆盖图像是在此结构的 i 成员中指定的主图像之上绘制的图像。 若要指定覆盖图像,请使用按位 OR 运算符将 fStyle 与 INDEXTOOVERLAYMASK 宏合并,并在宏中传递覆盖图像的从 1 开始的索引。 此图像之前必须已使用 ImageList_SetOverlayImage API 指定为覆盖图像。
若要从 fStyle 中提取覆盖图像,请使用按位 AND 运算符使用ILD_OVERLAYMASK值屏蔽 fStyle。
Comctl32.dll版本 6 不可再发行。 若要使用Comctl32.dll版本 6,必须在清单中指定它。 有关清单的详细信息,请参阅 启用视觉样式。
要求
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
标头 | commctrl.h (包括 Commctrl.h) |