ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

C# 做个Splash(启动屏幕)

2021-01-23 09:36:08  阅读:306  来源: 互联网

标签:progressBarX1 控件 窗口 Thread C# DoSplash splash 屏幕 Splash


现在有好些splash的做法,我的比较简单,而且如果你的素材不错的话,应该可以做出很好的效果,这个教程不依赖任何第三方控件,直接使用vs的就行了,下面这个是预览图:

 

正文开始:

我们首先新建一个winform项目,那个form1.cs就先不动他,我们先再建立一个windows窗口,命名为splash,设置窗体属性如下:

ShowInTaskbar=false:因为是splash窗口,所以不用在任务栏显示了。然后拖动一个progressbar 和Timer控件到splash窗口如上图。

StartPosition=CenterScreen;

TransparencyKey =Black;

FormBorderStyle =None:我还没见过那个splash窗口有功能键呢

好了,我们现在回到form1这个窗口吧,在InitializeComponent 这个方法下面加入如下代码:

 


Thread th = new Thread(new ThreadStart(DoSplash));
            th.Start();
            Thread.Sleep(3000);
            th.Abort();
            Thread.Sleep(1000);

 

这里我们新建了一个线程,用于启动DoSplash这个方法(稍后提到),然后告诉他应该启动后持续3秒(3000ms=3s),然后退出,留出一秒钟来让程序收尾。

然后我们来看看DoSplash这个方法做了什么,首先,我们在form1中添加这个方法:

 


private void DoSplash()
        {
            splash sp = new splash();
            sp.ShowDialog();
        }

 

很简单,就是实例化那个splash窗口。

下面,我们开始设置splash这个窗口,首先,设置timer控件的Interval属性为1000,progressbar的step为1,maximum为3,好了,我们双击这个splash窗口,以便给他的form_load写入代码如下:

 


timer1.Enabled = true;

 

然后,设置timer1的Tick事件代码如下:

 


private void timer1_Tick(object sender, EventArgs e)
        {
            if (progressBarX1.Value < progressBarX1.Maximum)
            {
                progressBarX1.Step = 1;
                progressBarX1.PerformStep();
            }
        }

 

至此,一个简单的Splash窗口就做好了,是不是很简单呢?

引用:https://www.cnblogs.com/longqi293/archive/2009/01/16/1377345.html

标签:progressBarX1,控件,窗口,Thread,C#,DoSplash,splash,屏幕,Splash
来源: https://www.cnblogs.com/HarryK4952/p/14316506.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有