1.
private void Form1_Load(object sender, System.EventArgs e)
for(double d=0.01; d< 1; d+=0.02)
{
System.Threading.Thread.Sleep(1);
Application.DoEvents();
this.Opacity=d;
this.Refresh();
}
2.
private void timer1_Tick(object sender, System.EventArgs e)
{
this.Opacity = WinShow ;
WinShow += 0.1 ;
if(WinShow >=1 )
{
timer1.Dispose ();
}
}
3.
用迴圈或計時器,
frmForm myForm=new frmForm()
frmForm.Opacity=0;
frmForm.show();
for(int i=0;i<100;i++)
{
Application.DoEvents()
frmForm.Opacity=i/100;
}
4.
#region ******** 表單淡入效果函數 ********
private double WinShow = 0;//用於視窗淡入效果的變數
private void FormShow(System.Windows.Forms.Form Curfrm)
{
Curfrm.Opacity = WinShow ;
WinShow += 0.01;
if(WinShow == 1)
{
Curfrm.timerShow.Stop ();
}
}
#endregion
#region ******** 表單淡入效果函數調用樣本 ********
//實現視窗的淡入效果
private void timerShow_Tick(object sender, System.EventArgs e)
{
//timerShow,這是一個timer控制項名稱;把timerShow.interval=100就可以了。
FormShow(this);
}
#endregion
http://publishblog.blogchina.com/blog/tb.b?diaryID=5564742