SHGetImageList 函数 (shellapi.h)
检索图像列表。
语法
SHSTDAPI SHGetImageList(
[in] int iImageList,
[in] REFIID riid,
[out] void **ppvObj
);
参数
[in] iImageList
类型: int
列表中包含的图像类型。 以下值之一:
SHIL_LARGE (0x0)
0x0。 图像大小通常为 32x32 像素。 但是,如果从“显示属性”中“外观”选项卡的“效果”部分选择了“使用大图标”选项,则图像为 48x48 像素。
SHIL_SMALL (0x1)
0x1。 这些图像是 Shell 标准小图标大小 16x16,但用户可自定义大小。
SHIL_EXTRALARGE (0x2)
0x2。 这些图像是 Shell 标准超大图标大小。 这通常是 48x48,但用户可自定义大小。
SHIL_SYSSMALL (0x3)
0x3。 这些图像是 GetSystemMetrics 使用 SM_CXSMICON 和 getSystemMetrics 使用 SM_CYSMICON 指定的大小。
SHIL_JUMBO (0x4)
0x4。 Windows Vista 及更高版本。 图像通常为 256x256 像素。
SHIL_LAST
用于验证的最大有效标志值。
[in] riid
类型: REFIID
对图像列表接口标识符的引用,通常IID_IImageList。
[out] ppvObj
类型: void**
此方法返回时,包含 riid 中请求的接口指针。 这通常是 IImageList。
返回值
类型: HRESULT
如果此函数成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。
注解
IImageList 指针类型(如 ppv 参数中返回的指针类型)可以根据需要转换为 HIMAGELIST;例如,用于列表视图。 相反, HIMAGELIST 可以强制转换为 指向 IImageList 的指针。
从 Windows Vista 开始, 如果进程标记为 dpi 感知,则SHIL_SMALL、 SHIL_LARGE和 SHIL_EXTRALARGE 缩放(每英寸点数 (dpi) )。 若要将这些类型设置为 dpi 感知,请调用 SetProcessDPIAware。 无论 dpi 感知设置如何,SHIL_JUMBO都固定为 256 像素。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | shellapi.h |
DLL | Shell32.dll |
API 集 | Windows 10版本 10.0.14393 中引入的 ext-ms-win-shell-shell32-l1- (2-2) |