就是在点击某个按钮时,该按钮的操作会进行很长一段时间,所以界面会出现假死的情况,现在我想要的方法是在点击按钮后,我可以进行其它操作, 老大说有个这种方法,但是我不知道是那个方法,有人知道的吗 谢谢了
解决方案 »
- 如何取得传真控制台的数据
- 如何分行定义一个数组变量??马上给分!!
- winsock问题及API
- 微软的MSN里怎么把台湾也列在国家的列表里!它只是一个省而已。中国的微软分公司傻了吗?这么严重的问题也。。。
- VB菜鸟提问:有没有关于FlexGrid的基本操作介绍?
- 请问窗体最小化后,为什么显示在左下角,却不显示在系统下边任务栏中?谢谢。
- 高手来看啊!又一个局域网的问题!
- 如何显示上次操作数据库的时间?
- 应该用什么控件?
- 寻找会asp和vb,性格懒散,不愿受时间约束,喜爱在家做事,空闲时间很多的人。
- VB程序输入一个键盘值就激活迅雷的老板键,然后迅雷就隐藏了
- vb6.0怎么修改access数据库中指定位置的数据?
DoEvents
...
doevents
next如果耗时时间很长的地方位于一个函数内,那就没办法了。VB也不支持多线程。
该命令是将CPU资源返回给Windows,一边其他任务能及时享有CPU利用权。这样做可以防止程序假死,但也会带来循环运行速度大幅减慢。
你看错了吧。你说的是 Sleep() API
DoEvents没有这个功能。它只是会去调用GetMessage() PeekMessage() 处理消息队列的消息。
Public Function MonitorVal() As Boolean
Dim i As Long
Do
GetMotionStatus i
Loop While i <> 0
MonitorVal = True
End Function
我需要检测i是否等于0,可是因为执行是时间很长,所以程序会假死,那么DoEvents应该加在那里呢。MonitorVal函数是模块里面函数。
Public Function MonitorVal() As Boolean
Dim i As Long
Do
GetMotionStatus i
DoEvents
Loop While i <> 0
MonitorVal = True
End Function