xinustc 发表于 2008-11-3 19:49:35

请问关于事件驱动

假设一个程序有三个控件:开始;暂停;继续
点开始即调用一个函数,点暂停即跳出该函数,点继续则进入该函数继续运行
在事件驱动模式下,当点开始调用函数后,就不能通过暂停来控制调用函数执行了,
请问怎样解决啊?谢谢

xinustc 发表于 2008-11-4 13:31:38

是不是我描述的不清楚呀?点开始之后调用函数func1() 该函数运行时间很长比方说10分钟,怎么样通过点击控件“暂停”让函数跳出呢?:face (37):

liongodmien 发表于 2008-11-8 23:20:41


;在GUI事件列表中
case $Button2
      $PAUSE = 1
CASE $Button3
      $PAUSE = 0
;
;
;在运行函数中
While $PAUSE = 1
    Sleep(10)
Wend

这例子可以让运行暂停在上面的循环中,或者可把上面的循环做成函数,用ADLIBENABLE()重复调用,当条件合适就会暂停.

zy_sunshine 发表于 2008-11-10 09:03:25

随便说说

原来我也遇到这种情况,是复制文件如果文件损坏想在20s结束文件复制。我的想法是创建两个进程一个就是复制文件另一个用时间函数监视这个进程 如果超过20s就结束这个进程中的本次循环但是结束进程可以 结束另一个模块中的一次循环就不知道怎么做了。。
页: [1]
查看完整版本: 请问关于事件驱动