我试图在透明表单背景上制作一个在PictureBox中显示各种GIF的软件。到目前为止一切都很好,但是当我在不同的系统上运行程序时,有一点不同。
我将它写在Win10 64位笔记本电脑上,.NET框架是最新的,透明度和动画都很好。只是PictureBox GIF在表单上设置了与其背景Lime颜色相同的TransparencyKey
。
我确信目标是.NET 4.0,因为我听说它是Win XP支持的最后一个。当我将它传输到我的其他测试系统(VMWare XP SP3,DX9,.NEt 4.0)时,窗体Lime背景在PictureBox区域中可见,窗体的其他部分保持透明。
如何使用WinForms在XP桌面上显示透明背景的GIF?
在使用WinForms的XP上甚至可以实现这一点吗?制作XP项目并不是强制性的,但由于目标系统非常薄弱,因此它具有很高的优势。
答案 0 :(得分:0)
我要感谢Hans Passant,因为他的评论给了我一个似乎可以解决问题的想法。
'一个完全疯狂的猜测是,它实际上是图像的背景,而不是图片框的背景。虚拟图形适配器的运行深度较低,如8bpp或16bpp。 - Hans Passant 19小时前'
我将代码中提到的所有'Lime'颜色和透明度键更改为'White',现在效果很好......