首先,我将向您展示我正在尝试在纯NET中重新创建的内容。
我重新创建了“库存”窗口,唯一剩下的就是蓝色不透明度窗口,它显示了信息。
如果我使用opacity属性,那么该窗体上的所有内容都具有不透明度,但在图片上文本没有不透明度。
如何仅在表单上创建不透明度?
答案 0 :(得分:1)
Opacity
属性仅存在于表单上,因此无法在其中包含的控件上覆盖它。
我确实认为稍微透明的背景图片可能会产生您想要的效果 - 但我刚试过它并且似乎没有效果。
答案 1 :(得分:0)
不确定这是否有帮助,但我唯一能想到的就是使用WPF的唯一方法就是使用TransparencyKey和表单的背景颜色。只需确保您的TransparencyKey未设置为默认控件或灰色,可以将表单的背景颜色设置为红色或其他内容。如果您寻找部分透明度,您可能最终不得不使用WPF。就个人而言,我从未尝试过在实际表单上使用WPF的不透明度,所以你“可能”得到相同的结果,但......
编辑:WPF导致相同的情况。表单下的所有控件都随表单变得透明。可能是因为它们固有形式属性。
答案 2 :(得分:0)
你可以用这个:
using System.Drawing.Drawing2D;
private void Form1_Paint(object sender, PaintEventArgs e)
{
var hb = new HatchBrush(HatchStyle.Percent50, this.TransparencyKey);
e.Graphics.FillRectangle(hb, this.DisplayRectangle);
}
等你帮帮忙..再见