使PictureBox透明并允许其移动

本文关键字:许其 移动 PictureBox 透明 | 更新日期: 2023-09-27 18:25:39

我需要一个包含演员图形的picturebox。演员被放置在包含平铺集图形的PictureBoxes上。演员应该可以自由移动,我已经做到了,但透明的.PNG演员图像在我加载到表单中时有一个控制色的背景。

问题:
如何使此图像的背景透明并允许移动?

使PictureBox透明并允许其移动

windowsforms的问题是其控件没有真正的透明度

控件的透明度基于其父控件的BackgroundColorBackgroundImage,这就是为什么您的PictureBox是control Colored

现在,如果你想让它真正透明,你有一些选择

自己画所有的东西

你可以使用gdi+Graphics的力量来绘制所有东西,但只能绘制所需的

处理控件的绘制

这可能是一个棘手的问题,你可以覆盖图片框的方法OnPaintOnPaintBackground,这样它就不会重新绘制背景(Control Colored),坏的一面是它在移动时会有很多闪烁和错误的背景

使用其他技术

我不确定,但如果我没有错的话,你可以使用wpf,尽管它可能会改变你的整个项目