WinForms应用程序中的图标显示

时间:2009-01-28 10:44:24

标签: winforms icons

当显示应用程序图标时,Windows是谁决定使用哪个版本(位深度)还是以某种方式在ICO文件中设置?

如果我创建的ICO文件只有32位颜色(24位+ 8位透明度),则图标在Win XP上显示正常。如果我添加例如4bit版本,Windows总是使用这个4bit版本,即使有32位图像也是如此。我的显示器设置为32位颜色。如果这很重要,我正在使用Greenfish Icon Editor。

有什么方法可以推动Windows使用32位图标而不是4位图标?

编辑:我使用IcoFX打开原始ICO文件并重新保存,现在Windows总是选择正确的位深度。有趣...

2 个答案:

答案 0 :(得分:2)

它是由Windows根据绘制的表面的位深度选择的。它还取决于.ICO文件(或资源)中图标的实际顺序,这就是为什么你得到与IcoFX不同的结果。

答案 1 :(得分:1)

Windows将使用可以显示的任何位深度的图标,因此您对事物应该如何工作的理解是正确的。

我没有使用过Greenfish,所以不知道它是否正确创建了图标文件。如果你正在使用VS2008,你可以试试(免费)Axialis IconWorkshop来仔细检查图标文件(它们也有非免费的独立版本)。