如何在运行时处理界面?(30分)

  • 主题发起人 主题发起人 zypang
  • 开始时间 开始时间
Z

zypang

Unregistered / Unconfirmed
GUEST, unregistred user!
将文件导入数据库时,数量很大,差不多要等上几秒,
我要让在等待导入文件时候,出现提示框。
我的做法是在导入的同时,显示一个form,form为提示
用的。在form上加一个timer,定时访问一个变量(这个变量在
导入时生成,再导入完后变值),当这个变量发生改变时,
就free掉提示的form。这样做之后,发现效果不是很好,
各位大虾,有没有更好的解决办法。
分数不多,请见谅。
 
导入完了以后把那个 form free 不就行了吗?
 
Use TThread.
 
加入TTimer控件我总觉得不好,还不如等变量达到一定的值,发送消息。
或者,在同一个窗体处理比较方便
 
使用线程,此乃最好的方法.
在初期创建两个线程,一个往数据库中导入,另一个显示信息同时判断标志位,
此标志是判断数据库是否导入完成,如果导入完成,结束第二个线程.
 
同意Kill Night,处理这种耗时的东东,肯定要用专门的线程了。
 
如果只是为了提示,把耗时的操作放在form.show,最后写Free即可
For exampl
procedure form1.show(sender:object)
begin
//the code need lots of time
form1.free;
end;
如果要在数据库未导入完成的同时允许进行其他操作,可以利用TThread
建立专门的线程完成数据库导入,完成后TThread.free;

 
我对线程了解不多。
哪位大虾能不能具体讲解一下该怎样做。
 
加粉,请以上几位解决。
 
已经搞定,谢谢各位,还是线程好用,见则给分。
 
接受答案了.
 
后退
顶部