以下是引用sl亮哥在2013-4-30 20:57:37的发言:
timer事件clear event quit
是一秒后关闭的意思么?
如果要改为两秒三秒后关闭该怎么写程序呢?
求大神指教
亲,计时器的timer事件不是指1秒后执行,它是一个周期性事件,说白了,就是隔个周期执行一次。那么这个周期是多少呢?就是计时器控件的Interval属性决定了,该属性以毫秒为单位(1秒=1000毫秒)。从理论上说,如果该属性设置值为1000,就是每秒执行一次timer事件,但事实并非如此。由于计算机硬件的不同,这个周期不是非常精确(但误差也不大,几乎可以忽略)。真正可能引起Interval属性大误差的是timer事件中的代码。若该事件中的代码非常复杂(比如:有很复杂的计算、大量的循环等),可能会使重复执行该事件的间隔时间延长,从而超出Interval属性的设定值。
根据以上分析,我个人认为:在timer事件中写CLEAR EVENT和QUIT语句是不妥当的,因为第一个周期执行时就把整个表单和程序给毙掉了,显然不符合“计时”的特征。如果要两、三秒以后关闭程序,可以在Timer事件中写如下结构的代码(Interval=1000):
PUBLIC I
I=0
------->以上两句写在计时器控件的Init事件中
IF I<3 &&假设第3秒关闭
CLEAR EVENT
QUIT
ELSE
I=I+1
ENDIF
... ... &&前2秒周期执行的代码
不过,我没这么用过,你可以试试行不行。