ImageList_LoadImageA 函数 (commctrl.h)
从指定的位图创建图像列表。
语法
HIMAGELIST ImageList_LoadImageA(
HINSTANCE hi,
LPCSTR lpbmp,
int cx,
int cGrow,
COLORREF crMask,
UINT uType,
UINT uFlags
);
参数
hi
类型: HINSTANCE
包含资源的实例的句柄。 如果要从文件加载图像或加载 OEM 资源,则此参数可以为 NULL 。
lpbmp
类型: LPCTSTR
要加载的图像。
如果 uFlags 参数包含LR_LOADFROMFILE, 则 lpbmp 是以 null 结尾的字符串的地址,该字符串命名包含要加载的图像的文件。
如果 hi 参数为非 NULL 且未指定LR_LOADFROMFILE, 则 lpbmp 是包含 hi 模块中图像资源名称的以 null 结尾的字符串的地址。
如果 hi 为 NULL 且未指定LR_LOADFROMFILE,则此参数的 LOWORD 必须是要加载的 OEM 映像的标识符。 若要创建此值,请将 MAKEINTRESOURCE 宏与 Winuser.h 中定义的 OEM 映像标识符之一结合使用。 这些标识符具有以下前缀。
Value | 含义 |
---|---|
|
|
|
|
|
cx
类型: int
每个图像的宽度。 每个图像的高度和初始图像数由指定资源的尺寸推断。
cGrow
类型: int
当系统需要为新映像腾出空间时,映像列表可以增长的图像数。 此参数表示重设大小的图像列表可以包含的新图像数。
crMask
类型: COLORREF
用于生成掩码的颜色。 指定位图、光标或图标中此颜色的每个像素都更改为黑色,并且掩码中的相应位设置为 1。 如果此参数是CLR_NONE值,则不会生成掩码。 如果此参数是CLR_DEFAULT值,则图像左上角的像素颜色将被视为掩码颜色。
uType
类型: UINT
指定要加载的图像类型的标志。 必须IMAGE_BITMAP此参数以指示正在加载位图。
Value | 含义 |
---|---|
|
加载位图。 |
uFlags
类型: UINT
指定如何加载映像的标志。 此参数可以是以下值的组合。
返回值
类型: HIMAGELIST
如果成功,则返回图像列表的句柄,否则返回 NULL 。
注解
LR_LOADTRANSPARENT不会以透明方式加载图像。 它创建一个只显示为透明的不透明图像列表,因为所有背景像素都已更改为COLOR_WINDOW。 如果图像是在不是颜色COLOR_WINDOW的背景上绘制的,则图像无法正确绘制。 此外,LR_LOADTRANSPARENT和LR_LOADMAP3DCOLORS使用调用 ImageList_LoadImage 时生效 的系统 颜色。 如果系统颜色随后发生更改,应用程序必须重新加载图像才能重新映射颜色。
注意
commctrl.h 标头将ImageList_LoadImage定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定。
要求
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | commctrl.h |
Library | Comctl32.lib |
DLL | Comctl32.dll |