加载具有特定分辨率的光标
Load cursor with certain resolution
我有两个游标资源。第一个 [IDC_CURSOR1] 包含三种不同的图像类型:
- 32x32, 24 bpp
- 48x48, 24 bpp
- 64x64, 24 bpp
第二个[IDC_CURSOR2]只包含一个:
- 48x48, 24 bpp
如果我调用 LoadCursor(hInst, IDC_CURSOR1) 它总是加载 32x32 版本,我无法找到加载 48x48 或 64x64 版本的方法。在第二种情况下,它加载 48x48 图标(因为没有其他版本),但它缩小到 32x32。
如何加载非 32x32 分辨率的光标?
顺便说一句:我尝试更改 DPI,因为根据 msdn,它应该在更高的 dpi 中自动加载更高分辨率的光标,但它没有。
谢谢!
调用 LoadImage
传递 IMAGE_CURSOR
并指定所需的维度。
Cursor = (HCURSOR)LoadImage(hinst, IDC_CURSOR1, IMAGE_CURSOR, 64, 64, LR_DEFAULTCOLOR);
我有两个游标资源。第一个 [IDC_CURSOR1] 包含三种不同的图像类型:
- 32x32, 24 bpp
- 48x48, 24 bpp
- 64x64, 24 bpp
第二个[IDC_CURSOR2]只包含一个:
- 48x48, 24 bpp
如果我调用 LoadCursor(hInst, IDC_CURSOR1) 它总是加载 32x32 版本,我无法找到加载 48x48 或 64x64 版本的方法。在第二种情况下,它加载 48x48 图标(因为没有其他版本),但它缩小到 32x32。
如何加载非 32x32 分辨率的光标?
顺便说一句:我尝试更改 DPI,因为根据 msdn,它应该在更高的 dpi 中自动加载更高分辨率的光标,但它没有。
谢谢!
调用 LoadImage
传递 IMAGE_CURSOR
并指定所需的维度。
Cursor = (HCURSOR)LoadImage(hinst, IDC_CURSOR1, IMAGE_CURSOR, 64, 64, LR_DEFAULTCOLOR);