我想让PictureBox
控件的背景透明。在PictureBox
(矩形)中,我放置了一个图标(圆形)。我想让图标透明,以便图标下方的其他部分可见。
我尝试将PictureBox.BackColor
属性设置为“透明”,但它不起作用。我还尝试在运行时使用Color.FromArgb
方法设置它,但它也不起作用。
这个问题有解决办法吗?
答案 0 :(得分:4)
设置pictureBox.BackColor = Color.Transparent;
肯定应该有用。
使用Color.FromArgb(0, 0, 0, 0)
时,还要验证是否设置了alpha通道颜色; (这是第一个参数,零表示透明色)
当然,请确保您的图标具有透明背景。
答案 1 :(得分:2)
如果使用WinForms
,则将背景颜色设置为透明将不起作用,因为透明度处理不是级联系统 - 您只能(在大多数情况下)设置整体控件的透明度(或者说不透明度)使用Opacity
属性,但这将改变整个控制显示的alpha通道,为您的图像提供一个看得见的。
一种解决方案可能是将PictureBox
的背景颜色设置为其下方控件的背景颜色(例如,表单的颜色)。但在你的情况下这可能还不够。
答案 2 :(得分:0)
您必须使用此
在图标下方的其他部分设置图标icon_pictureBox_name.Controls.Add(other_portion_picturBox_name);
然后你可以将PictureBox.BackColor属性设置为" Transparent"它会起作用;)