Windows 图标总是方形的?

问题描述 投票:0回答:1

我想知道Windows中图标的系统尺寸是否总是方形的。我指的是应用程序的 Windows 规范,而不是图标位图本身。

例如通过 WinAPI GetSystemMetrics(SM_CXICON) 的函数,我得到了大图标的宽度,并通过 GetSystemMetrics(SM_CYICON) 得到了它的高度。但是,既然图标总是方形的,那么这些函数调用中至少有一个不是多余的吗?

此外,图标的默认文件名也只包含一个值,例如AppList.targetsize-16.png 而不是 AppList.targetsize-16x16.png ( https://learn.microsoft.com/en-us/windows/apps/design/style/iconography/app-icon-construction#complete-图标和变体列表

更准确地说:是否保证 Windows 中的标准图标大小(至少在 Windows 11 之前)始终是正方形?


编辑: 由于问题似乎模棱两可:我目前正在使用 WinAPI 练习 C++(即使它可能有点过时,我只对理论感兴趣)。在创建应用程序时,有无数的文章、过程和概念只是针对图标的设计以及应创建的尺寸。如果我现在想使用 WinAPI 自己管理所有内容,例如将托盘图标的缩放比例更改为 125%,则使用 20x20 图标而不是 16x16。 如果我查询图标宽度,得到 20 作为结果,并可以由此得出结论,我现在正在加载 20x20 图标,现在是否足够?我可能会疯狂地为每次缩放使用不同的颜色(即使真的没有理由这样做)

对于我来说,这个问题主要不是关于实际的好处,更多的是关于基本的了解。

c windows winapi icons
1个回答
0
投票

是否保证 Windows 中的标准图标大小(至少直到 Windows 11) 总是方形的?

根据 Qualify an image resources for targetsizeReference an image file from your app package manifest,从我的角度来看,这几乎是正确的,尽管它们是不同的项目类型。

也可以从获取外壳大图标的大小推导出来。

填写注册时使用的WNDCLASSEX结构时 您的窗口类,将 hIcon 成员设置为系统大图标 (通常 32x32)和hIconSm成员到系统小图标 (通常 16x16)。有关类图标的更多信息,请参阅类 图标。

© www.soinside.com 2019 - 2024. All rights reserved.