• 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
    
  • 相关阅读:
    C语言数据结构(二)
    面向对象
    Java集合类汇总
    C语言运算符优先级和结合性
    c语言数据结构(一)
    浏览器间bug
    HTTP协议中的1xx,2xx,3xx,4xx,5xx状态码分别表示什么,列举常见错误码及含义
    SSL是啥?
    {转}大公司里怎样开发和部署前端代码?
    浏览器 HTTP 缓存原理分析
  • 原文地址:https://www.cnblogs.com/LcVong/p/15460106.html
Copyright © 2020-2023  润新知