C#实现窗体淡入淡出效果的方法总结
程序员文章站
2023-12-18 12:47:40
1.复制代码 代码如下: private void form1_load(object ...
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