模拟程序执行时间,用进度条来表示

模拟程序执行时间,用进度条来表示,也可以用倒计时来实现。

如果程序是简单的解压/复制文件,简单点的以文件为单位更新进度,复杂点的会会以字节为单位判断文件大小来判断进度

程序已经调试过了,直接上代码

DimEnv jindu//定义程序执行的总进度全局变量
jindu =0
jindu =  grm_1()
jindu =  grm_2()
jindu =  grm_3()
jindu =  grm_4()
jindu =  grm_5()
jindu =  grm_6()
/**
**功能说明:模拟程序执行时间用进度条来显示
**发表于:CSDN
**作者:大叔obnijeh
**时间:2020年11月
*如果程序是简单的解压/复制文件,简单点的以文件为单位更新进度,复杂点的会会以字节为单位判断文件大小来判断进度
*下面是通用的方式
*用定时器计算,不停计算当前进度情况,控件设计每200毫秒检测一次,
*其它程序也是一样,没有控件的用线程来实现。如java也可以观察者来实现。
*这是比较通用的实现方式。
*/
Event Form1.Timer1.Timer //这是个定时器

//value的值是进度条,100是进度条满,我们分成10份。用jindu来标识
	TracePrint ("实时获取进度"&date&"-"& time & "jindu的值:"& jindu)
	Form1.ProgressBar1.Value = Form1.ProgressBar1.Value + jindu
	jindu = 0 //加完后清空
End Event

Function grm_1() //程序大约执行3秒,到此,我们预估是整个程序的5分之1
	For i = 1 To 100
		Delay 30
	Next
	jindu = 20//1.5秒加10,3秒就加20
	grm_1 = jindu
End Function

Function grm_2() //程序大约执行3秒,到此,我们预估是整个程序的5分之2
	For i = 1 To 100
		Delay 30
	Next
	jindu = 20
	grm_2 = jindu
End Function

Function grm_3() //程序大约执行3秒,到此,我们预估是整个程序的5分之3
	For i = 1 To 100
		Delay 30
	Next
	jindu = 20
	grm_3 = jindu
End Function


Function grm_4() //程序大约执行3秒,到此,我们预估是整个程序的5分之4
	For i = 1 To 100
		Delay 30
	Next
	jindu = 20
	grm_4 = jindu
End Function


Function grm_5() //程序大约执行1.5秒,到此,我们预估是整个程序的5分之4多一点
	For i = 1 To 100
		Delay 15
	Next
	jindu = 10
	grm_5 = jindu
End Function

Function grm_6() //程序大约执行1.5秒,到此,我们预估是整个程序执行完毕!
	For i = 1 To 100
		Delay 15
	Next
	jindu = 10
	grm_6 = jindu
End Function

运行效果如下:

 

其它复杂的程序按照这个思路就可以了。用上一些插件及配置文件会更加好。夜深人静,准备睡觉。

 

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值