加载具有一定分辨率的游标

Posted

技术标签:

【中文标题】加载具有一定分辨率的游标【英文标题】:Load cursor with certain resolution 【发布时间】:2016-10-21 08:12:59 【问题描述】:

我有两个游标资源。第一个 [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 自动加载更高分辨率的光标,但事实并非如此。

谢谢!

【问题讨论】:

【参考方案1】:

调用LoadImage 传递IMAGE_CURSOR 并指定所需的尺寸。

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

【讨论】:

谢谢! MS API 函数名称非常明显:D 您是否阅读过 LoadCursor 的文档?它会将您定向到 LoadImage。 哎呀,我没看到,因为它在开头提到了:) 我总是这样做,但有时当作者试图区分某些东西并使部分文本看起来不同时,它会产生相反的效果,即它变得“不可见”......

以上是关于加载具有一定分辨率的游标的主要内容,如果未能解决你的问题,请参考以下文章

Python 的 os.path.getsize() 是不是具有真正的字节分辨率?

PC端页面适应不同的分辨率的方法

如何根据分辨率调用不同的css文件

谈谈-Android图片加载多图解决方案

GalliumOS(Chromebook pixel 2015 但也具有一定的普适性)

Android高效加载大图多图解决方案,有效避免程序OOM