C#中常用窗口特效的实现代码

 更新时间:2023年12月06日 09:18:31   作者:Csharp 小记  
这篇文章主要为大家详细介绍了C#中三个常用的窗口特效的实现,分别是淡入淡出、变大变小、缓升缓降,感兴趣的小伙伴可以跟随小编一起学习一下

前言

说到特效,就得谈"动"这个字,在Winform中想要动起来,大部分可以靠Timer来实现(你要说我靠循环也能实现一样的效果,我也无话可说),但基本上也就限制在一些比较基础的效果了。不过,也没关系,谁让这是Winform呢?

下面描述了三种窗口的效果。分别是淡入淡出、变大变小、缓升缓降。主要通过结合Timer与透明度、大小、以及位置等来实现。

开发环境:.NET Framework版本:4.8

开发工具:Visual Studio 2022

实现步骤

淡入淡出

public Form1()
        {
            InitializeComponent();
            Opacity = 0;
            timer1.Interval = 10;
            timer1.Start();
        }
   private void timer1_Tick(object sender, EventArgs e)
        {

            if (isShow)
            {
                if (Height < height)
                {
                    Height += 1;
                }
                else
                {
                    timer1.Stop();
                }
            }
            else
            {
                if (ClientSize.Height > 0)
                {
                    Height -= 1;
                }
                else
                {
                    timer1.Stop();
                    Close();
                }
            }
        }

变大变小

public Form2()
        {
            InitializeComponent();
            height = Height;

            Size = new Size(Width, 0);
            timer1.Interval = 10;
            timer1.Start();
        }
 
 private void timer1_Tick(object sender, EventArgs e)
        {

            if (isShow)
            {
                if (Height < height)
                {
                    Height += 1;
                }
                else
                {
                    timer1.Stop();
                }
            }
            else
            {
                if (ClientSize.Height > 0)
                {
                    Height -= 1;
                }
                else
                {
                    timer1.Stop();
                    Close();
                }
            }
        }

缓升缓降

  public Form3()
        {
            InitializeComponent();
            timer1.Interval = 10;
        }
        private void Form3_Load(object sender, EventArgs e)
        {
            Location = new Point(screenRect.Width - Width, screenRect.Height);
            timer1.Start();
        }
 private void timer1_Tick(object sender, EventArgs e)
        {
            if (isShow)
            {
                if (Location.Y > screenRect.Height-Height)
                {
                    Location = new Point(Location.X, Location.Y - 1);
                }
                else
                {
                    timer1.Stop();
                }
            }
            else
            {
                if (Location.Y < screenRect.Height )
                {
                    Location = new Point(Location.X, Location.Y + 1);
                }
                else
                {
                    timer1.Stop();
                    Close();
                }
            }

        }

实现效果

到此这篇关于C#中常用窗口特效的实现代码的文章就介绍到这了,更多相关C#窗口特效内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C# 中const,readonly,static的使用小结

    C# 中const,readonly,static的使用小结

    这篇文章主要介绍了C# 中使用const,readonly,static的示例,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下
    2021-01-01
  • C# winform分页查询的实现示例

    C# winform分页查询的实现示例

    这篇文章主要介绍了C# winform分页查询的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • C#生成本地配置文件的实现示例

    C#生成本地配置文件的实现示例

    本文将介绍如何使用C#语言生成本地配置文件,以便为应用程序提供灵活的配置选项,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-01-01
  • c# 实现计时器功能

    c# 实现计时器功能

    这篇文章主要介绍了c# 实现计时器功能的示例代码,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下
    2020-12-12
  • C#通过NPOI操作Excel的实例代码

    C#通过NPOI操作Excel的实例代码

    C#操作Excel的方法有很多种,本文介绍了C#通过NPOI操作Excel,具有一定的参考价值,有兴趣的可以了解一下。
    2017-01-01
  • Unity实现旋转扭曲图像特效

    Unity实现旋转扭曲图像特效

    这篇文章主要为大家详细介绍了Unity实现旋转扭曲图像特效,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-02-02
  • C#特性之匿名方法和Lambda表达式

    C#特性之匿名方法和Lambda表达式

    这篇文章主要介绍了C#特性之匿名方法和Lambda表达式,需要的朋友可以参考下
    2014-12-12
  • 深入理解C#窗体关闭事件

    深入理解C#窗体关闭事件

    很多初学者都想把默认的C#关闭按钮事件弄明白,本文就介绍一下C#窗体关闭事件,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • C#中方法的详细介绍

    C#中方法的详细介绍

    本篇文章介绍了,C#中方法的详细说明。需要的朋友参考下
    2013-04-04
  • C#生成随机数的方法小结

    C#生成随机数的方法小结

    这篇文章主要介绍了C#生成随机数的方法,实例总结了C#生成随机数的相关技巧,非常具有实用价值,需要的朋友可以参考下
    2015-05-05

最新评论