在程序执行的过程中,程序窗口不能刷新,咋办 程序中的某一个窗口上有一个按钮,按下这个按钮要做很多的工作,在执行按钮的过程中,如果干了点别的事,比如说打开了另一个mp3,这个窗口就会显示不完整,不能刷新。该如何设置,才能使得即使有别的事件产生,依然可以保持窗口的完整,也就是适时刷新 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 有两个方法一个就是将这个按钮所要完成的工作放到线程中处理另一个就是在适当的时候强行刷新程序界面,例如:procedur tform1.button1click(sender:tobject);var i:integer;begin for i:=1 to 100000000 do begin if i Mod 10000 = 0 then Application.ProcessMessages; ...... end; 还可以放一个Timer控件,设置时间间隔,每隔一定时间检测以下是否有其它事件产生 按钮要做很多的工作的过程中写:form1.UpDate;————————————————————————————————————宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。———————————————————————————————————— 建议用线程。如果不开线程,可以在循环中加一句:Application.ProcessMessages; 建议开个线程,不是太难,Delphi有自带的例子,在demos目录下面 都说了,我没得说了不过用 Timer 控件是不行的,在这个过程中,OnTimer 事件是执行不到的 Recruit Delphi Programmer 高难度编程技术,高手请进!!! 在TADOQuery的返回结果上再执行查询? 昨天终于把MM带回家................ 我在调试MIDAS系统时老是死机,特别是连接远程服务器的时候,怎么办? 怎样屏蔽TStringGrid中的方向键?请指点。先谢了! Delphi拨号上网的例子? DELPHI中这六个excel构件,使用其中那几个可以达到我的效果和怎样使用 关于MEMO组件的问题。 初学delphi,请教两个小问题? _Catalog使用问题 如何开发如同foxmail4.2中的始终在最前面的那个滚动窗口?
一个就是将这个按钮所要完成的工作放到线程中处理
另一个就是在适当的时候强行刷新程序界面,例如:
procedur tform1.button1click(sender:tobject);
var
i:integer;
begin
for i:=1 to 100000000 do
begin
if i Mod 10000 = 0 then Application.ProcessMessages;
......
end;
是否有其它事件产生
form1.UpDate;————————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
————————————————————————————————————
如果不开线程,可以在循环中加一句:
Application.ProcessMessages;
不过用 Timer 控件是不行的,在这个过程中,OnTimer 事件是执行不到的