| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1373 人关注过本帖
标题:写一个form窗体渐变显示的方法!
只看楼主 加入收藏
mextb1860
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2005-7-10
收藏
 问题点数:0 回复次数:16 
写一个form窗体渐变显示的方法!
让一个窗体慢慢的显示出来!!
没写方法的时候我是这样写的
private bool m_showForm = true;

private void timer1_Tick(object sender, EventArgs e)
{
if (m_showForm)
{
double d = 0.04;
if (Opacity + d >= 1.0)
{
Opacity = 1.0;
timer1.Stop();
}
else
{
Opacity += d;
}
}
}

我现在想把这个方法写成一个方法。。不知道怎么写。。。
我想达到的目的就是。想让很多窗体都可以 有渐变显示的效果!!
写成一个方法。。。哪个窗体想渐变显示。就在这个窗体里引用这个方法就可以实现。!!哪问能帮我

[此贴子已经被作者于2006-7-15 0:46:52编辑过]

搜索更多相关主题的帖子: form 窗体 渐变 
2006-07-15 00:43
mextb1860
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2005-7-10
收藏
得分:0 
dddddddddddddddddddd
2006-07-15 08:31
xxxxx52
Rank: 4
等 级:贵宾
威 望:13
帖 子:689
专家分:0
注 册:2006-4-30
收藏
得分:0 
private void timer1_Tick(object sender, System.EventArgs e)
{
if(this.Opacity>0||this.Opacity<1)
{
this.Opacity=(this.Opacity*100+1)/100;
double p = this.Opacity*100;
label1.Text=p.ToString()+"%";
}
else
{
this.Opacity=1;
label1.Text="100%";
}
}

private void Form1_Load(object sender, System.EventArgs e)
{
this.Opacity=0;
timer1.Start();
}

这个方法就可以实现了 你看看吧

好的资料下载网站http:///in.asp?id=xuelion2006 嘿嘿帮点一下拉~
2006-07-15 09:05
marer
Rank: 2
等 级:新手上路
威 望:3
帖 子:928
专家分:0
注 册:2005-7-18
收藏
得分:0 
做一个窗体显示类:
public class OpacityForms
{
System.Windows.Forms.Form f1;
System.Windows.Forms.Label l1;
public OpacityForms(System.Windows.Forms.Form f,System.Windows.Forms.Label l)
{
this.f1=f;
this.l1=l;
}
public void formsOpacity()
{
if(f1.Opacity>0||f1.Opacity<1)
{
f1.Opacity=(f1.Opacity*100+1)/100;
double p = f1.Opacity*100;
l1.Text=p.ToString()+"%";
}
else
{
f1.Opacity=1;
l1.Text="100%";
}
}
}

在窗体的Timer控件的Tick事件中写:

private void timer1_Tick(object sender,EventArgs e)
{
if(this.label1.Text=="100%")
{
timer1.Enabed=false;
return;
}
OpacityForms ff=new OpacityForms(this,this.label1);
ff.formsOpacity();
}

[此贴子已经被作者于2006-7-15 11:41:40编辑过]


public class 人生历程 extends Thread{public void run(){while(true){努力,努力,再努力!!;Thread.sleep(0);}}}
2006-07-15 11:39
mextb1860
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2005-7-10
收藏
得分:0 
private void timer1_Tick(object sender,EventArgs e)

能把这个事件也一起写在类里面吗
2006-07-16 09:20
mextb1860
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2005-7-10
收藏
得分:0 
我要顶啊
2006-07-16 17:08
xxxxx52
Rank: 4
等 级:贵宾
威 望:13
帖 子:689
专家分:0
注 册:2006-4-30
收藏
得分:0 

在类里面阿 我说的都是在类里面的代码


好的资料下载网站http:///in.asp?id=xuelion2006 嘿嘿帮点一下拉~
2006-07-17 08:54
marer
Rank: 2
等 级:新手上路
威 望:3
帖 子:928
专家分:0
注 册:2005-7-18
收藏
得分:0 
为什么要在类里写Timer_Tick事件呢?完全可以自己在类里写自己的事件啊

public class 人生历程 extends Thread{public void run(){while(true){努力,努力,再努力!!;Thread.sleep(0);}}}
2006-07-17 08:58
xxxxx52
Rank: 4
等 级:贵宾
威 望:13
帖 子:689
专家分:0
注 册:2006-4-30
收藏
得分:0 

[QUOTE]public class OpacityForms
{
System.Windows.Forms.Form f1;
System.Windows.Forms.Label l1;
public OpacityForms(System.Windows.Forms.Form f,System.Windows.Forms.Label l)
{
this.f1=f;
this.l1=l;
}
public void formsOpacity()
{
if(f1.Opacity>0||f1.Opacity<1)
{
f1.Opacity=(f1.Opacity*100+1)/100;
double p = f1.Opacity*100;
l1.Text=p.ToString()+"%";
}
else
{
f1.Opacity=1;
l1.Text="100%";
}
}
}

在窗体的Timer控件的Tick事件中写:

private void timer1_Tick(object sender,EventArgs e)
{
if(this.label1.Text=="100%")
{
timer1.Enabed=false;
return;
}
OpacityForms ff=new OpacityForms(this,this.label1);
ff.formsOpacity();
}
[/QUOTE]

这段代码看懂了 不仅实现功能 还教你值传递 方法调用等等 都是c#的知识
marer是老师不?


好的资料下载网站http:///in.asp?id=xuelion2006 嘿嘿帮点一下拉~
2006-07-17 09:01
noshow
Rank: 2
等 级:新手上路
威 望:4
帖 子:1127
专家分:0
注 册:2006-4-21
收藏
得分:0 
实验完毕
真好用

抢劫式学习中

此号自封于2006年11月30日
2006-07-17 10:05
快速回复:写一个form窗体渐变显示的方法!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.042959 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved