首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >有没有办法在.NET中获得不同大小的Windows系统图标?

有没有办法在.NET中获得不同大小的Windows系统图标?
EN

Stack Overflow用户
提问于 2010-06-13 12:52:58
回答 2查看 7.2K关注 0票数 18

特别是,我希望能够在运行时获得小图标(16 X 16)。

我试过这个:

代码语言:javascript
复制
new Icon(SystemIcons.Error, SystemInformation.SmallIconSize)

它应该“尝试找到与请求大小相匹配的图标版本”,但它仍然给我一个32 x 32的图标。我也试过了:

代码语言:javascript
复制
Size iconSize = SystemInformation.SmallIconSize;
Bitmap bitmap = new Bitmap(iconSize.Width, iconSize.Height);
using (Graphics g = Graphics.FromImage(bitmap))
{
    g.DrawIcon(SystemIcons.Error, new Rectangle(Point.Empty, iconSize));
}

但这只是将32 x 32图标缩小为丑陋的16 x 16图标。

我曾经考虑过从VS图像库中取出图标,但我真的希望它们随着操作系统的不同而动态变化(XP上的XP图标,Vista上的Vista图标,等等)。如果需要的话,我愿意P/Invoke。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3031124

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档