-1

我有一个场景,其中 BaseForm 需要是透明的,并且其中的面板是表单的 1/4 高度并且应该是不透明的(其中有一些按钮和文本框)。因此,我将 BaseFrom 的透明键设置为 BackColor,而对于面板,我将其设置为其他颜色。

对于该区域的其余部分,我需要它是透明的,但在相同的情况下捕获事件,所以我使用另一种形式(EventForm)来做到这一点,不透明度设置为 1%。但是在将 EventForm 作为子项添加到 BaseForm 时,不透明值被不透明的父表单 (BaseForm) 覆盖,我看到了一个灰色区域。我无法更改基本表单的不透明度,因为它也会影响顶部面板。

有什么建议么?

4

1 回答 1

0

很有可能我发现有很多BackColors设置可以让你的表单透明并且仍然可以点击。其中一种颜色是Red,所以你可以试试这个:

public Form1(){
   InitializeComponent();
   BackColor = Color.Red;
   TransparencyKey = BackColor;
}

如果您有其他具有红色的 UI 控件,您可以尝试其他颜色(正如我所说,有许多颜色以​​相同的方式工作)。关键是我不知道为什么它会这样工作,只是尝试它就可以了。难以置信,因为据我所知,Opacity = 0手段click through

于 2013-11-01T14:15:55.157 回答