现在有好些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