我注意到我的应用程序将图标发送到尺寸为16×16像素的Windows托盘 – 而我的Vista PC我有一个双倍宽的任务栏,似乎以18×18显示图标.我的应用程序图标上的调整大小工件看起来很糟糕.如何询问Windows图标应该是多大?
编辑:
我正在动态生成图标,并使用像素字体文本覆盖.动态生成一堆图标大小似乎很浪费,所以避免构建一个具有所有“可能”大小的图标会很好(不是我甚至不确定那些是什么).
GetSystemMetrics(SM_CXSMICON)返回16 – 不正确的值.
GetThemeBackgroundContentRect也没有帮助.
Mark的核心答案是正确的:以多种格式创建图标,让Windows选择正确的图标.不要忘记为HighDPI场景执行32×32和64×64图标.
但是SM_CXICON / SM_CYICON不一定会返回将在任务栏中使用的大小.任务栏为其大小选择正确的图标大小(这在Window 7中更为重要).
只需提供适当大小的图标,你应该没问题.