- 创建一个新的Windows窗体项目
- 设置TransparancyKey这种形式的&背景色为 “黑”
- 运行
=>表所示透明C#:Form.DoubleBuffered =真杀死transparancy
现在还设置 Form.DoubleBuffered属性为true
=>窗体不再显示透明
为什么这样? 获取双缓冲透明表单的任何解决方法?
=>表所示透明C#:Form.DoubleBuffered =真杀死transparancy
现在还设置 Form.DoubleBuffered属性为true
=>窗体不再显示透明
为什么这样? 获取双缓冲透明表单的任何解决方法?
您不需要担心透明度和双缓冲工作的TransparencyKey和BackColor属性。将它们保留为默认值并再次尝试。然后,如果你真的想要你的背景颜色为黑色,请尝试应用该值。
下面的代码片段产生在我的机器上的%50透明窗口:
using System;
using System.Drawing;
using System.Windows.Forms;
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e) {
DoubleBuffered = true;
AllowTransparency = true;
BackColor = Color.Black;
Opacity = .5;
}
}
我刚才试了一下你的步骤进行复制,它是对我工作的罚款。也许这是某种.Net版本/操作系统版本/ Graphsics问题。
仅供参考我与测试...
双缓冲肯定杀死其他的方式来实现透明。只是不TransparencyKey。 –