如果循环执行一段代码期间触发了Timer控件的代码,会不会影响原有循环代码的执行?
1.表单是一个循环显示一些数据,这里面有很多从SQL表读取数据并进行处理后显示的语句,直到按下ESC键才退出循环。2.表单还有一个timer控件,功能是每隔20秒从SQL表读取当天的日志数据并刷新表单上的操作日志表格
[问题是]:如果在循环显示过程中,触发了timer控件的timer事件中的代码,是否会影响到原来正在执行的循环语句的正确性?
还有就是如果一个表单中有多个timer控件,它们之间是否会互相干扰?
***timer控件的timer事件代码如下(每隔20秒触发一次):
if hour(DATETIME())>6 .and. hour(DATETIME())<22 &&从早7点到晚上22点之前刷新滚动日志,在此之外的时间不刷新日志
HG8=DATE()
XINTH1=STRTRAN(dtoc(HG8),'.','-')+' 00:00:00'
XINTH2=STRTRAN(dtoc(HG8),'.','-')+' 23:59:00'
thisform.grdpgk.RecordSource=''
if SQLEXEC(CON,"SELECT 操作员,日期,星期,动作,类别 FROM GYJL WHERE 日期 BETWEEN ?XINTH1 AND ?XINTH2 ORDER BY ID DESC","PJL")>0
with thisform.grdpgk
.RecordSource="PJL"
.column2.controlsource="操作员"
.column4.controlsource="星期"
.column6.controlsource="动作"
.column7.controlsource="类别"
.column9.controlsource="日期"
ENDWITH
GO TOP
Thisform.grdpgk.refresh
ENDIF
endif
显示界面:
[此贴子已经被作者于2024-4-30 11:48编辑过]