代码之家  ›  专栏  ›  技术社区  ›  Jack B Nimble

ImageList透明度在运行时不工作

  •  1
  • Jack B Nimble  · 技术社区  · 16 年前

    我使用的是具有透明度的32位PNG文件。我将它们添加到具有以下属性的图像列表中:

    ColorDepth: Depth32Bit
    TransparentColor: Transparent
    

    当我将图像分配给工具栏按钮时,它在Visual Studio中以正确的透明度预览。但是当我运行这个应用程序时,透明性被覆盖在半透明区域的黑色搞得一团糟。

    我该怎么解决这个问题?

    alt text

    alt text

    2 回复  |  直到 16 年前
        1
  •  3
  •   Matt Breckon    16 年前

    如果不使用图像列表直接将它们添加到工具栏,我认为它们将正确绘制。

        2
  •  3
  •   Jack B Nimble    16 年前

    解决办法显然是

    Application.EnableVisualStyles();
    

    在应用程序开始之前。这解决了透明度问题。

    Solution Reference

    MSDN on EnableVisualStyles

    推荐文章