2012年3月20日星期二

C#窗体渐变特效

打开程序后,窗体由透明到不透明逐渐显示出来。
实现方法:
1. 添加一个Timer控件(此例中命名为:fadeTimer),然后在其Tick事件中添加FadeTimer_Tick中的相关代码即可,简单吧,呵呵。
在该窗体类的构造函数里面添加如下代码:
 1 private bool showing = true;
2 public LoginForm()
3 {
4   InitializeComponent();
5
6   //窗体显示特效
7   Opacity = 0.0; //窗体透明度为0
8   fadeTimer.Start(); //计时开始
9 }
2. Tick事件:添加如下控制代码:
 1 private void FadeTimer_Tick(object sender, EventArgs e)
2 {
3   double d = 0.10;
4   if (showing)
5   {
6     if (Opacity + d >= 1.0)
7     {
8        Opacity = 1.0;
9      fadeTimer.Stop();
10      }
11     else
12      {
13        Opacity += d;
14      }
15    }
16    else
17    {
18      if (Opacity - d <= 0.0)
19     {
20       Opacity = 0.0;
21        fadeTimer.Stop();
22      }else
23      {
24       Opacity -= d;
25      }
26   }
27 }





C#窗体渐变特效

TAG:C# 窗体