C#的WinForm中,如何实现控件的半透明?
类似于下面图片所示: --------------------编程问答-------------------- 窗体透明可以在属性中设置,上面这个还不知道. --------------------编程问答-------------------- 默认不支持。不过可能能用GDI+自己画? --------------------编程问答-------------------- 可以重新设置一下控件的背景色。如button1.BackColor = Color.FromArgb(0, 0, 0, 0); --------------------编程问答-------------------- 呵呵给分吧,做过的,你给控件加个背景图就可以了 --------------------编程问答-------------------- 测试通过,楼主可以自己试一下--------------------编程问答--------------------
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
//设置Style支持透明背景色
this.SetStyle(ControlStyles.SupportsTransparentBackColor, true);
this.BackColor = Color.FromArgb(100, 100, 100, 100);
}
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
e.Graphics.DrawString("test", new Font("Tahoma", 8.25f), Brushes.Red, new PointF(20, 20));
}
}
学习了! --------------------编程问答-------------------- 搂主可以指定ARGB四个参数,设置一个半透明颜色,然后用画刷填充控件背景色 --------------------编程问答-------------------- 设置窗体的Opacity属性就行了。
this.Opacity = 0.4; --------------------编程问答-------------------- 4楼的,我给控件加了通明背景图,不行
5楼的我试了,根本就不行。
6楼,你是怎么测试通过的?只是编译通过?
8楼,我要的是窗体上指定的控件半透明,其他控件不用透明 --------------------编程问答-------------------- 楼主我试过6楼的方法了,应该可以的。
一起学习,不知道给分不。 --------------------编程问答-------------------- 用户控件可以实现。因为用户控件是继承了form相同的接口。而普通控件没有。
普通控件也可以做到半透,不过需要调用windows消息,具体消息不明,自己有空找找吧。 --------------------编程问答-------------------- 不要全透明的?
--------------------编程问答-------------------- 6楼的可以实现对其父控件的透明,也就是说如果这个UserControl放在Panel中,它是对这个Panel支持透明的,
但如果这个Panel上还有其他控件比如Button,而UserControl和Button重叠,则UserControl还是会把Button遮住的! --------------------编程问答-------------------- 学习 --------------------编程问答-------------------- 6楼正解,我也是这么做的。 --------------------编程问答-------------------- up --------------------编程问答-------------------- 那个是窗体把 窗体有个属性
form1.Opacity = 50;
0是完全透明 100不透明
你做个这个的窗体欠到主窗体里。
--------------------编程问答-------------------- 图片中的那个确实是用窗体实现的,将窗体的ShowInToobar, ControlBox, FormBorderStyle都设掉,再定位到指定位置模拟的
但这样控制点太多, --------------------编程问答-------------------- 学习了 --------------------编程问答-------------------- 自定义一个半透明的控件。
方法就用5楼的,绝对可以。我的项目就是这样做的。 --------------------编程问答-------------------- 非常简单:
this.Opacity=50 --------------------编程问答-------------------- 走过路过没有错过 --------------------编程问答-------------------- 看下. --------------------编程问答-------------------- 大家就没个有效的方法?只对父容器通明满足不了要求呀,
如图,要求在最上面的控件能半透明显示其下被遮的控件,控件之间不存在容器的关系, --------------------编程问答-------------------- 控件背景透明,一直这么用的,试一下
public void Transparency ( PictureBox pb, Label lbl)
{
lbl.BackColor = Color.Transparent;
lbl.Parent = pb;
} --------------------编程问答-------------------- 貌似很热闹 学习下 --------------------编程问答-------------------- 学习了
补充:.NET技术 , C#