LVBKIMAGEA 结构 (commctrl.h)
包含有关列表视图控件的背景图像的信息。 此结构用于设置和检索背景图像信息。
语法
typedef struct tagLVBKIMAGEA {
ULONG ulFlags;
HBITMAP hbm;
LPSTR pszImage;
UINT cchImageMax;
int xOffsetPercent;
int yOffsetPercent;
} LVBKIMAGEA, *LPLVBKIMAGEA;
成员
ulFlags
类型:ULONG
此成员可以是以下一个或多个标志。 可以使用LVBKIF_SOURCE_MASK值来屏蔽除源标志外的所有标志。 可以使用LVBKIF_STYLE_MASK值来屏蔽除样式标志外的所有值。
价值 | 意义 |
---|---|
|
列表视图控件没有背景图像。 |
|
背景位图通过 LVBKIMAGE的 hbm 成员提供。 如果消息 LVM_SETBKIMAGE 成功,则列表视图将获取位图的所有权。 |
|
pszImage 成员包含背景图像的 URL。 |
|
背景图像通常显示。 |
|
背景图像将平铺以填充控件的整个背景。 |
|
指定第一个磁贴的坐标。 仅当还指定了 LVBKIF_STYLE_TILE 标志时,此标志才有效。 如果未指定此标志,则第一个磁贴从工作区的左上角开始。 如果使用 ComCtl32.dll 版本 6.0 xOffsetPercent,yOffsetPercent 字段包含像素(而不是百分比值)来指定第一个磁贴的坐标。 Comctl32.dll 版本 6 不可再发行,但它包含在 Windows 或更高版本中。 此外,必须在清单中指定 Comctl32.dll 版本 6。 有关清单的详细信息,请参阅 启用视觉样式。 |
|
水印背景位图通过 LVBKIMAGE的 hbm 成员提供。 如果 LVM_SETBKIMAGE 消息成功,则列表视图控件获取位图的所有权。 |
|
仅在同时指定LVBKIF_TYPE_WATERMARK时才有效。 此标志指示通过LVBKIF_TYPE_WATERMARK提供的位图包含有效的 alpha 通道。 |
hbm
类型:HBITMAP
背景位图的句柄。 仅当 ulFlags中设置 LVBKIF_SOURCE_HBITMAP 标志时,此成员才有效。
pszImage
类型:LPTSTR
包含背景图像 URL 的 NULL 终止字符串的地址。 仅当 ulFlags中设置 LVBKIF_SOURCE_URL 标志时,此成员才有效。 必须初始化此成员以指向包含或接收文本的缓冲区,然后再发送消息。
cchImageMax
类型:UINT
pszImage中地址的缓冲区大小。 如果将信息发送到控件,则忽略此成员。
xOffsetPercent
类型:int
图像应水平偏移的控件工作区的百分比。 例如,在 0% 处,图像将针对控件工作区的左边缘显示。 在 50% 处,图像将以水平居中居中方式显示在控件的工作区中。 在 100% 处,图像将显示在控件工作区的右边缘。 此成员仅在 ulFlags中指定的 LVBKIF_STYLE_NORMAL 时有效。 如果在 ulFlags中同时指定 LVBKIF_FLAG_TILEOFFSET 和 LVBKIF_STYLE_TILE,则该值指定第一个磁贴的像素而不是百分比偏移量。 否则,将忽略该值。
yOffsetPercent
类型:int
图像应垂直偏移的控件工作区的百分比。 例如,在 0% 处,图像将根据控件工作区的上边缘显示。 在 50% 处,图像将以垂直居中方式显示在控件的工作区中。 在 100% 处,图像将显示在控件工作区的下边缘。 此成员仅在 ulFlags中指定的 LVBKIF_STYLE_NORMAL 时有效。 如果在 ulFlags中同时指定 LVBKIF_FLAG_TILEOFFSET 和 LVBKIF_STYLE_TILE,则该值指定第一个磁贴的像素而不是百分比偏移量。 否则,将忽略该值。
言论
此结构用于 LVM_GETBKIMAGE 和 LVM_SETBKIMAGE 消息。
注意
commctrl.h 标头将 LVBKIMAGE 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows Vista [仅限桌面应用] |
支持的最低服务器 | Windows Server 2003 [仅限桌面应用] |
标头 | commctrl.h |