以一定的分辨率加载光标

Tut*_*men 2 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分辨率的游标?

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

谢谢!

Dav*_*nan 5

呼叫LoadImage传递IMAGE_CURSOR并指定所需的尺寸。

Cursor = (HCURSOR)LoadImage(hinst, IDC_CURSOR1, IMAGE_CURSOR, 64, 64, LR_DEFAULTCOLOR);
Run Code Online (Sandbox Code Playgroud)