以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]先打开窗口再加载数据 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=120749) |
-- 作者:chnfo -- 发布时间:2018/6/22 18:32:00 -- [求助]先打开窗口再加载数据 设计了一个弹出窗口,在afterload事件中写了一些加载数据的代码。 当这些代码耗时较长的时候,点了弹窗按钮,它总是要等数据加载事件执行完以后,窗口才弹出来。 有什么办法,可以让窗口先显示出来,然后再加载数据?要不然,用户会以为死机了。
|
-- 作者:有点蓝 -- 发布时间:2018/6/22 20:31:00 -- 把加载数据的代码放到timetick事件 |
-- 作者:chnfo -- 发布时间:2018/6/23 9:20:00 -- 实际场景 在表属性的click事件中,加入了代码 if e.col.name = "A" then forms("X").open end if 这样,在表中单元格点击的时候,会弹出窗口X 在窗口X的 afterload事件中,有加载数据的代码(实际测试,在数据量小的时候,不到2秒;数据量大的时候,要约7秒) 按你的意见把数据加载事件放到timertick中 1、如果把窗口X的属性中,计时器的启用设为false,时间设为1000;那么窗口打开之后,不会加载数据 2、如果把窗口X的属性中,计时器的启用设为true,时间设为1000;那么窗口打开之后,每隔1000,都会自动加载一次数据(但是我只需要加载一次呀)
[此贴子已经被作者于2018/6/23 9:20:19编辑过]
|
-- 作者:有点蓝 -- 发布时间:2018/6/23 10:30:00 -- timertick事件 e.form.TimerEnabled= false 原来的加载代码
|