createIcon 函数 (winuser.h)
创建具有指定大小、颜色和位图案的图标。
若要在运行时创建彩色图标,可以使用 CreateIconIndirect 函数,该函数基于 ICONINFO 结构的内容创建图标。
语法
HICON CreateIcon(
[in, optional] HINSTANCE hInstance,
[in] int nWidth,
[in] int nHeight,
[in] BYTE cPlanes,
[in] BYTE cBitsPixel,
[in] const BYTE *lpbANDbits,
[in] const BYTE *lpbXORbits
);
参数
[in, optional] hInstance
类型: HINSTANCE
创建图标的模块实例的句柄。
[in] nWidth
类型: int
图标的宽度(以像素为单位)。 请参阅备注。
[in] nHeight
类型: int
图标的高度(以像素为单位)。 请参阅备注。
[in] cPlanes
类型: BYTE
图标的 XOR 位掩码中的平面数。 请参阅备注。
[in] cBitsPixel
类型: BYTE
图标的 XOR 位掩码中的每像素位数。
[in] lpbANDbits
类型: const BYTE*
包含图标 AND 位掩码的位值的字节数组。 此位掩码描述单色位图。 请参阅备注。
[in] lpbXORbits
类型: const BYTE*
包含图标的 XOR 位掩码的位值的字节数组。 此位掩码描述单色或彩色位图。 请参阅备注。
返回值
类型: HICON
如果函数成功,则返回值是图标的句柄。
如果函数失败,则返回值为 NULL。 要获得更多的错误信息,请调用 GetLastError。
注解
若要确定图标的标称大小,请使用 GetSystemMetrics 函数,指定 SM_CXICON 或 SM_CYICON 值。 此外,可以使用此 API 的 DPI 感知版本,请参阅 (GetSystemMetricsForDpi) (/windows/win32/api/winuser/nf-winuser-getsystemmetricsfordpi) 。 有关详细信息,请参阅 Windows 上的图标大小和高 DPI 桌面应用程序开发。
有关 lpbANDbits 和 lpbXORbits 参数的详细信息,请参阅 CreateBitmap 函数的 lpBits 参数的说明。
对于单色图标 ,CreateIcon 将以下真值表应用于 AND 和 XOR 位掩码:
AND 位掩码 | XOR 位掩码 | 显示 |
---|---|---|
0 | 0 | 黑色 |
0 | 1 | White |
1 | 0 | 屏幕 |
1 | 1 | 反向屏幕 |
使用完图标后,请使用 DestroyIcon 函数销毁它。
示例
有关示例,请参阅 创建图标。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | winuser.h (包括 Windows.h) |
Library | User32.lib |
DLL | User32.dll |