注册 登录
编程论坛 VB6论坛

程序运行时,时间标签停止运行了?怎么回事?怎么解决

suzhanpeng 发布于 2017-10-12 16:57, 1899 次点击
我写了一个程序是分析立体图的元素的,在窗体上有个显示当前时间的标签。程序运行,在分析过程可能占用的内存比较大,时间标签就停止运行了。怎么解决?
4 回复
#2
xiangyue05102017-10-12 17:32
不是很清楚,但是估计你这个是有循环,导致假死。
可以在循环体中加入Do Events语句,转让控制权,以便让操作系统处理其它的事件

[此贴子已经被作者于2017-10-12 17:39编辑过]

#3
ZHRXJR2017-10-14 09:46
“程序运行,在分析过程可能占用的内存比较大,时间标签就停止运行了。”估计你的分析过程可能是一个循环,在循环过程中标签是不会动态显示的,只有在循环结束后标签才能显示。
你可以在循环前将时间time存储在一个变量中,在循环结束后再将时间time存储在另外一个变量中,然后在标签显示这个循环的耗时多少秒(用DateDiff函数计算)。
#4
suzhanpeng2017-10-16 10:45
两位版主说的都对,Do Events语句可能是不会用,试着加了但是没有效果。 分析的过程是多个循环的镶嵌,中间还加了大量的外部文件处理,我加时间显示的目的主要是为了观察软件有没有“停止响应”。
#5
wlrjgzs2017-10-16 12:06
这种情况很常见,因为VB都是单线程程序,不可能在分析的同时,更新你的时间显示。要解决此问题,只能考虑把分析过程和显示时间的过程分别由不同的线程来执行。
1