我有一个表单,我将它的不透明度设置为50%,如下所示:
this.Opacity = 0.5D; <--this==Form
Run Code Online (Sandbox Code Playgroud)
我的问题是表格上的所有内容都是不透明度为50%
我在表单上有两个按钮,我希望它们没有Opacity.
我知道this.Opacity
包括所有控件和由于某种原因的图形
我的问题是,如何排除控件的不透明度?
示例图片:
谢谢!
由于Control
没有Opacity
属性和加号,大多数控件都不支持透明色,那么一个可行的解决方案就是:
创建一个Form
被调用的MainForm
并放置您要排除的所有控件.
1.1将两者BackColor
和TransparencyKey
属性设置MainForm
为相同的颜色,例如Color.Red
创建另一个名为的表单,TransparentForm
并放置必须变为透明的所有控件.设置ShowInTaskbar
属性False
.
在MainForm
Load
事件中显示TransparentForm
并发送回来.
private void MainForm_Load(object sender, EventArgs e)
{
TransparentForm form = new TransparentForm();
form.Opacity = 0.5D;
form.Show();
form.SendToBack();
}
Run Code Online (Sandbox Code Playgroud)
两种形式的控件的位置必须是这样的,当组合时,它显示适当的用户界面.
归档时间: |
|
查看次数: |
2735 次 |
最近记录: |