c#制作进度条

c#制作进度条

c#界面编程由于有vs的支持可以说是非常容易,我们只需要创建窗口类,然后图形操作布置控件,需要做的只是添加动作。但是当我们的应用程序本身就没有主界面,只需要一个用于提示的进度条界面,主要功能已经用控制台应用类编写完毕,且我们认为只为了一个小小的进度条界面,没有必要重新创建项目。事实上我们也并没有必要这样做,因为我们有更好的选择,利用单挂线程的方式实现进度条窗口的显示和更新。

制作ui界面

编写进度条更新函数

		public void SetProgerssBar(int Number)
        {
            progressBar1.Value = Number;
        }

在主程序类中编写窗口显示函数用来创建线程显示

        private void ShowProcess()
        {
            Application.Run(progress);
        }

在这里我们需要用Application.Run()函数来达到消息循环,以实现窗体的进度条的正确更新。
如果简单的使用窗口类的show方法展示进度条窗口,我们是不能进行任何操作的,也就是说,进度条不会进行变化,我们的文本显示一般要使用Label控件,当只是用show方法是也是无法正常显示出来的。
更多的关于Application和run()可以点击
C#中Application类简述

用创建新线程的方式来显示

由于如果我们用Application.Run()来实现窗口显示,虽然可以很好的实现进度条功能,但是进度条一定是伴随着功能模块的进行进行更新的,所以一定要在功能开始进行前就将进度条窗口显示出来,但是这样就使程序停滞,因为Application.Run()是以消息循环的方式实现,除非窗口关闭才能实现。因为程序执行的顺序性这就导致了冲突,好在我们有线程这个工具可以帮助我们解决这个问题。线程在一个进程内可以并行执行自己的任务二不会互相干扰,所以利用线程我们可以很好实现进度条显示和功能执行的功能。
如果不是很清楚可以在这里了解更多
C#中的多线程

 		processBarThread = new Thread(new ThreadStart(ShowProcess));
        processBarThread.Start();

更新进度条实现进度条推进

进度条一定是随着功能的实现不断推进的,我们将功能模块分好权重,在每一个功能模块的后边添加一个进度条更新函数的调用就可以了。
除此之外还有其他更加先进的进度条实现方式可以参考
C#如何对button按钮实现进度条功能

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

自律懒人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值