手把手教你用c#做个Splash(启动屏幕)(转)

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

正文开始:

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

ShowInTaskbar=false:因为是splash窗口,所以不用在任务栏显示了。然后拖动一个progressbarTimer控件到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窗口就做好了,是不是很简单呢?

http://www.cnblogs.com/longqi293/archive/2009/01/16/1377345.html

作者:Jack Fan初学博闻 of .NET CF/.Net
出处:http://longqi293.cnblogs.com
本博文欢迎大家浏览和转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,在『参考』的文章中,我会表明参考的文章来源,尊重他人版权。若您发现我侵犯了您的版权,请及时与我联系。
更多文章请看 [置顶]索引贴——移动开发(不断更新中)
posted @ 2011-04-01 09:54  董雨  阅读(652)  评论(0编辑  收藏  举报