C#实现窗体渐变效果
2009-02-25 15:26
375 查看
看来http://bbs.bc-cn.ne这个编程论坛不错哦,呵呵,我那个C#渐变窗体的问题,在好几个论坛里发贴问了,别人都回答得不太清楚的,呵呵,刚刚在这论坛有个shen521941的论坛网友帮我解决好了,嘿嘿,在此表示感谢。。。下面是C#渐变窗体的完美解决方案:
① 新建一窗体,拉一Timer控件,Interval值设置为20,双击Timer控件进入事件编写:
private void timer1_Tick(object sender, EventArgs e)
{
// 计时器事件
if (this.Opacity > 0)
{
this.Opacity -= 0.02;
}
else {
this.timer1.Enabled = false;
Application.Exit();
}
}
② 往窗体里加入一按钮,命名为btnExit,双击按钮进入事件编写:
private void btnExit_Click(object sender, EventArgs e)
{
timer1.Start();
}
然后测试窗体,这样当点击btnExit按钮后窗体慢慢变透明并最终关闭,透明的速度由Interval值决定,可是当我们点击窗体右上角的关闭按 钮时,窗体是直接关闭的,并没有经过透明渐变,下面我们就来编写代码让我们点击窗体右上角的关闭按钮时,窗体也透明渐变关闭,在窗体的 FormClosing事件中编写代码:
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
e.Cancel = true;
if (this.Opacity > 0)
{
timer1.Start();
}
else
{
e.Cancel = false;
}
}
这样,整个渐变功能我们已经实现,至于启动时也想要窗体渐变出现,只需要再加个Timer控件编写相反的事件就行。
① 新建一窗体,拉一Timer控件,Interval值设置为20,双击Timer控件进入事件编写:
private void timer1_Tick(object sender, EventArgs e)
{
// 计时器事件
if (this.Opacity > 0)
{
this.Opacity -= 0.02;
}
else {
this.timer1.Enabled = false;
Application.Exit();
}
}
② 往窗体里加入一按钮,命名为btnExit,双击按钮进入事件编写:
private void btnExit_Click(object sender, EventArgs e)
{
timer1.Start();
}
然后测试窗体,这样当点击btnExit按钮后窗体慢慢变透明并最终关闭,透明的速度由Interval值决定,可是当我们点击窗体右上角的关闭按 钮时,窗体是直接关闭的,并没有经过透明渐变,下面我们就来编写代码让我们点击窗体右上角的关闭按钮时,窗体也透明渐变关闭,在窗体的 FormClosing事件中编写代码:
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
e.Cancel = true;
if (this.Opacity > 0)
{
timer1.Start();
}
else
{
e.Cancel = false;
}
}
这样,整个渐变功能我们已经实现,至于启动时也想要窗体渐变出现,只需要再加个Timer控件编写相反的事件就行。
相关文章推荐
- c#中渐变引导窗体的实现
- C#实现窗体淡入淡出效果的几种方法(转)
- C# 实现窗体的淡入淡出效果
- 使用C#实现WinForm窗体的动画效果
- C# 非模态窗体(show)实现模态窗体(ShowDialog)的效果
- C#MDI窗体实现多窗口效果
- 用C#实现窗体效果
- C#窗体实现淡入淡出效果
- C# 非模态窗体(show)实现模态窗体(ShowDialog)的效果
- C#实现具有Aero效果的窗体
- C# WinForm 实现窗体渐显效果
- c#渐变效果的窗体背景
- MFC窗体滑动、缩放、渐变动态效果的实现
- 使用Tesseract (OCR)实现简单的验证码识别(C#)+窗体淡入淡出效果
- C#实现具有Aero效果的窗体
- C#实现窗体淡入淡出效果的几种方法
- C# 非模态窗体(show)实现模态窗体(ShowDialog)的效果
- 使用C#实现WinForm窗体的动画效果
- 使用C#实现WinForm窗体的动画效果
- MFC窗体滑动、缩放、渐变动态效果的实现 .