VB中DOEVENTS函数的用法!能不能通俗易懂点!我看了MSDN的介绍还是一头雾水!谢了大虾们!

来源:百度知道 编辑:UC知道 时间:2024/05/09 03:33:48

当一个循环太长,造成系统无响应时,就用。如
for i=1 to 10000000
print i^2
DOEVENTS
next i

函数 DoEvents 实际就是暂停执行该过程的语句,让操作系统执行绘图、运行其他程序。当操作系统处理完队列中的事件,会返回该过程继续执行下面的语句。

DoEvents 函数会返回一个 Integer,以代表 Visual Basic 独立版本中打开的窗体数目,例如,Visual Basic,标准版,在其它的应用程序中,DoEvents 返回 0。

DoEvents 对于简化诸如允许用户取消一个已启动的过程 — 例如搜寻一个文件 — 特别有用。对于长时间过程,放弃控制权最好使用定时器或通过委派任务给 ActiveX EXE 部件来完成。以后,任务还是完全独立于应用程序,多任务及时间片由操作系统来处理。

小心 ,确保以 DoEvents 放弃控制权的过程,在第一次 DoEvents 返回之前,不能再次被其他部分的代码调用;否则会产生不可预料的结果。此外,如果其它的应用程序可能会和本过程以不可预知的方式进行交互操作,那么也不要使用 DoEvents,因为此时不能放弃控制权。