0

嘿伙计们,我使用此代码为我的表单启用透明度:

private void TypingFreak_Load(object sender, EventArgs e)
{
   this.SetStyle(ControlStyles.SupportsTransparentBackColor, true);
   this.TransparencyKey = Color.FromKnownColor(KnownColor.Control);
   this.Update();
}

但是,它变得好像不存在,所以如果我在桌面上运行它,我可以看到图标并对其做出反应(我无法写入文本框)

在我的表单中,我有 2 个富文本框,我希望它们对我的表单背景的背景色透明。知道如何解决这个问题吗?

4

1 回答 1

0

TransparencyKey 使表单表现得好像它在具有该颜色的地方不存在。在您的情况下,它是所有内容控件(例如 TextBox、ListBox 等)的背景颜色,因此几乎整个表单都是不可见的。或者,如果您的表单颜色不同,那么您在放置此类控件的地方可能会出现漏洞。

您需要通过设置透明背景颜色使控件本身透明,但并非所有控件都支持这一点。事实上,RichTextBox(和 TextBox)没有:

    在此处输入图像描述

导致

    在此处输入图像描述

于 2012-07-17T05:30:25.220 回答