查询时系统忙,如何优化!谢谢(100分)

B

Banky

Unregistered / Unconfirmed
GUEST, unregistred user!
查询初
我用 showmessage('正在查询,请稍候。。。。')
查询后
我用 showmessage('查询完毕')
可是开始查询时,可能系统太忙了
只显示那个窗口,里面的字都刷不出来
只等到查询完毕才正常,
应该怎么做呢? [:(]
 
查询数据库的操作用异步执行方式,查询完毕后会通过事件来通知的
 
你查询数据库采用了线程的方式了吗?
如果采用了这种方式,你要在线程中采用Synchronize()来同步;如果你采用的不是这种
方式而是直接在主线程中查询的,你可以在showmessage('正在查询,请稍候。。。。')
后先延迟一点时间,再启动查询,这样就能保证你的提示信息窗体能够被刷新,你所提到
的问题就可以解决,因为提示框仅是向用户显示某些信息罢了,不用费好大的工夫在这个上面
 
不需要线程的。
如下:
查询初 showmessage('正在查询,请稍候。。。。')
Application.ProcessMessages;
查询 。。。
完毕 showmessage('查询完毕')
就行了。因为程序没时间处理你前面的消息(即使用sleep(n)也不行的)。
 
同意上面说法,我也这样做过
 
多人接受答案了。
 
顶部