C#欢迎画面显示程序启动进度条,并自动打开主界面

一、前言:
最近想实现 一个延时启动的程序,如果只是纯粹的延时等待,会给用户造成程序卡死的假象,所以需要一个可以动的欢迎画面。效果如下图所示:
在这里插入图片描述
二、创建欢迎界面:
1.新建 一个WF界面,并且设置为软件的启动项。
2.将界面的边框去掉。
3.设置背景色为白色。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
三、后端实现:

具体实现代码如下:软件界面加载时先启动后台线程进行延时操作,并实时显示到进度条上,待进度条完成后(也就是线程结束)程序会自动响应线程结束事件(注意这个响应事件是主线程上的,所以操作控件界面等等都不影响),从而进行主界面启动。

        #region =======加载主窗体=======
        private void F_Loading_Shown(object sender, EventArgs e)
        {
            using (BackgroundWorker bw = new BackgroundWorker())
            {
                bw.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bw_RunWorkerCompleted);//开始的事件

                bw.DoWork += new DoWorkEventHandler(bw_DoWork);//完成的事件

                bw.RunWorkerAsync("Tank");
            }
        }

        void bw_DoWork(object sender, DoWorkEventArgs e)// 这里是后台线程
        {
            for (int i = 0; i < 100; i++)
            {
                Thread.Sleep(100);//延时

                this.progressBar1.Value = i;

                this.labAA.Text = i.ToString() + "%";
            }
        }

        void bw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)//后台线程完成后的响应事件
        {
            C_Global_variable.main = new Main();

            C_Global_variable.main.Show();
        }
        #endregion
posted @ 2021-06-18 18:32  LcVong  Views(413)  Comments(1Edit  收藏  举报