各位大侠,我的程序需要半个小时后再执行操作,但是我怕这段时间一直搁那儿挺耗资源的,请问大侠们又啥好办法,能最大程度的节省等待期间的系统资源占用呢?
解决方案 »
- SetSysColors的参数一些小疑问
- 如何让UserControl全屏
- Command.picture=PictureBox.image, 图片显示不出来,求助~~
- 怎样用编程取得ftp上的目录?
- 请问VB报表有没有这样的事件:报表写完一组激发的事件
- 为什么在 spy++ 中看editplus的类分别为Afx:400000:8:13c6:0:430f/Afx:400000:8:13c6:0:4047(重启了一次机子)
- VB插件
- 斑竹请仁慈一点吧 !!!!!!!
- MSHFlexGrid数据读取的问题
- 怎样终止一个正在运行的命令
- 求助 vbscript 服务器端脚本语言怎么没执行
- 二维数组重定义问题
do
select case getmessage(msg,0,0,0,0)
case 0: exit do
case else
xxxx
end select
loop
WaitForSingleObject
timer1.enabled=false
call XXXXXXXXXX
end if就是这样........
xx=xx+1
if xx=1800 then
timer1.enabled=false
call XXXXXXXXXX
end if
Dim StartTimer As Variant
Dim OldTimer As Variant
Dim DelayYear As Long, DelayDay As Integer
StartTimer = Timer
Do
DoEvents
If Timer < OldTimer Then
If DelayDay > 365 Then
DelayYear = DelayYear + 1
DelayDay = 0
Else
DelayDay = DelayDay + 1
End If
End If
OldTimer = Timer
Loop Until (DelayYear * 365 + DelayDay) * 86400 + Timer - StartTimer > s
End Sub
我用的这个,发现很耗资源啊,短时间等待还没啥长了就麻烦
但是窗体中的timer中没反应啊
先定义个计数器,然后在TIMER事件中累加,当计数器达到累积时间就开始调用你的程序处理代码:DIM I AS LONGSUB FORM_LOAD()
TIMER1.INTERVAL=10000 '折合10秒触发一次
END SUBSUB TIMER1_TIMER()
I=I+1
IF I>180 THEN'180X10秒是不是半个小时啊
调用过程
TIMER1.ENABLE=FALSE '假设只做一次的,那么这里就加上这句
I=0 '假设要再半个小时执行一次的,那么就加这句
ENDIF
END SUB楼主明白了么?