为什么表单不透明度不变?

时间:2013-12-17 06:59:43

标签: c# winforms user-interface

我只是尝试使用Windows窗体并遇到了属性Opacity。我制作了一个非常简单的程序,其中包含一个带有文本框的表单,并添加了以下代码: -

   this.textBox1.MouseHover += ChangeOpacity ; 
   private void ChangeOpacity(object sender, EventArgs e )
   {
      this.Opacity = 50 ; 
      this.Refresh() ; 
   }

当用户将鼠标悬停在文本框上时,我想将窗体的不透明度更改为50%,但此代码无效。不透明度仍然保持在100%。任何人都可以指出我在上面的代码中所犯的错误,或者我该怎么做才能纠正我的问题。我还尝试使用Invalidate() ans然后Update(),但它仍未改变不透明度。

2 个答案:

答案 0 :(得分:6)

Opacity将是百分比。默认值为1.00

尝试推杆:

this.Opacity = 0.5;

答案 1 :(得分:2)

不透明度的值介于0到1

之间

所以100%是1,50%是0.5,0%是0。

尝试用它

this.Opacity=.5;