当一个PictureBox放在另一个PictureBox上时,如何使它的透明度正常工作?

问题描述 投票:0回答:1

我当时在Windows Forms中做一个游戏项目,真的很喜欢它的结果,除了一件让我烦恼的事情:我要添加的新图片框正在“吃掉”它后面的图片框,显示了它的背景父母并没有像我想的那样显示他身后的形象。显然,这就是Windows窗体中透明度的工作原理,它基本上复制了他身后的颜色。

This is how it looks,我希望动物被完全看到。

[我也在这里的另一篇文章中尝试过this,但结果却是like this

可能没有解决方案,在我制作的这款小游戏中我还有其他事情。还有另一个带有其他按钮和东西的图片框,代表商店。而且,您还可以在两个图像中看到底部有一个面板,其中包含一些详细信息。在那种情况下,我会保持原样,也许再尝试将其移到WPF。

c# .net winforms picturebox
1个回答
0
投票

您注意到.net控件的透明度不是真正的透明度,它会复制它的父背景,因此,如果您有其他同级控件,则Z索引较高的控件将遮蔽其他控件。

[如果您要创建游戏时避免使用图片框,则有很多选择:使用Unity之类的游戏引擎或自己制作游戏。

容易做的事情是创建一个位图,在其中渲染您的游戏,然后以您的形式呈现它,但是请注意,这可能会很慢。

© www.soinside.com 2019 - 2024. All rights reserved.