怎么实现窗口半透明而控件不透明

如题所述

虽然不是无法实现,但比较麻烦。 因为opacity属性会让窗体上所有的控件都变成透明的,所以我们可以这样办。 代码如下: Form f = new Form(); //创建一个新窗体 Label lab = new Label(); //要显示的文本 void MainFormLoad(object sender, EventArgs e) { f.FormBorderStyle = FormBorderStyle.None; //设置窗体无边框 f.ShowInTaskbar = false; f.BackColor = Color.Red;f.TransparencyKey = f.BackColor; //让窗体透明 lab.Text = "我是在透明窗体上的不透明文本!"; lab.BackColor = Color.Transparent; //背景色透明 lab.Location = new Point(100,150); //调整在窗体上的位置 f.Controls.Add(lab); f.TopLevel = true; f.Show(); } void MainFormMove(object sender, EventArgs e) { f.Location = this.Location; } 时间仓促,这段代码仍然不是很完美,需要你自己仔细修复一下。
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答