以一定的分辨率加载光标

时间:2016-06-20 06:58:39

标签: windows winapi gdi

我有两个游标资源。第一个[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分辨率以外的光标?

BTW:我试图更改DPI,因为根据msdn,它应该在更高的dpi中自动加载更高分辨率的光标,但事实并非如此。

谢谢!

1 个答案:

答案 0 :(得分:4)

致电LoadImage传递IMAGE_CURSOR并指定所需尺寸。

Cursor = (HCURSOR)LoadImage(hinst, IDC_CURSOR1, IMAGE_CURSOR, 64, 64, LR_DEFAULTCOLOR);