LoadIconWithScaleDown 函数 (commctrl.h)

加载图标。 如果图标不是标准大小,则此函数会纵向缩减较大的图像,而不是纵向扩展较小的图像。

语法

HRESULT LoadIconWithScaleDown(
  [in]  HINSTANCE hinst,
  [in]  PCWSTR    pszName,
  [in]  int       cx,
  [in]  int       cy,
  [out] HICON     *phico
);

参数

[in] hinst

类型: HINSTANCE

DLL 或可执行文件 (.exe) 包含要加载的图标的模块的句柄。 有关详细信息,请参阅 GetModuleHandle

若要加载预定义的系统图标或独立图标文件,请将此参数设置为 NULL

[in] pszName

类型: PCWSTR

指向以 null 结尾的 Unicode 缓冲区的指针,该缓冲区包含有关要加载的图标的位置信息。

如果 hinst 为非 NULL则 pszName 按名称或序号指定图标资源。 必须使用 MAKEINTRESOURCE 宏打包此序号。

如果 hinstNULL,pszName 将指定要加载的预定义系统图标的IDI_前缀) 的标识符 (

[in] cx

类型: int

图标的所需宽度(以像素为单位)。

[in] cy

类型: int

图标的所需高度(以像素为单位)。

[out] phico

类型: HICON*

当此函数返回时,包含指向已加载图标句柄的指针。

返回值

类型: HRESULT

如果成功,则返回S_OK,否则返回错误值,包括:

返回代码 说明
E_INVALIDARG
pszName 指向的缓冲区的内容不适合任何预期的解释。

注解

此函数将首先在图标文件中搜索大小完全相同的图标。 如果未找到匹配项,则除非 cxcy 都匹配其中一个标准图标大小(16、32、48 或 256 像素),否则会选择下一个最大的图标,然后缩小到所需大小。 例如,如果 callign 应用程序请求 x 尺寸为 40 像素的图标,则使用 48 像素图标并将其缩小到 40 像素。 相比之下, LoadImage 函数选择 32 像素图标并将其缩放为 40 像素。

如果函数无法找到较大的图标,则它默认为查找下一个最小图标并将其纵向扩展为所需大小的标准行为。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 commctrl.h
Library Comctl32.lib
DLL Comctl32.dll