2011-07-04 58 views
1

我有代码让窗体在移动时部分透明,但我想知道是否可以添加淡入和淡出效果当我开始移动并停止移动表单时。C#在移动窗体时淡入淡出透明度

编辑

我使用添加透明度形式的代码是:

 bool canMove = false; 

    private void Form1_Load(object sender, EventArgs e) 
    { 
     canMove = true; 
    } 

    private void Form1_Move(object sender, EventArgs e) 
    { 
     if (canMove) 
     { 
      this.Opacity = 0.7; 
     } 
    } 

    private void Form1_ResizeEnd(object sender, EventArgs e) 
    { 
     this.Opacity = 1; 
    } 
+0

问题是什么? – Anuraj

+0

添加淡入和淡出效果。 这就是我需要的。 – Alan

回答

0

您应该使用Timer控件,在计时器的tick事件中设置不透明度。直到表单停止移动(定义像isMoving这样的变量并根据表单的状态将其设置为true/false)。

您可以在my article中找到有关衰落标签的设置计时器的滴答事件中的不透明度的示例。使用Google翻译器进行阅读。

希望这会有所帮助。

+0

哦,谢谢它真的帮助! :) – Alan

0

你可以采取一个Timer控制,那么你可以开始计时,当形式开始移动,并设置表格的transparency到某个值,并在Timer的每个tick上,使transparencydecrease,并在某些值上使其为increase。如果您希望表单停止移动时具有淡入淡出效果,则可以在表单移动时执行相同操作。

相关问题