如何在主窗体正在处理大量数据时弹出一个类似进度条的窗口来进行提示(50分)

H

Haoye

Unregistered / Unconfirmed
GUEST, unregistred user!
我实现的方法是创建一个新的窗口
application.createform(tform2,form2);
form2.show;
可是显示的form2却是个空白的窗体,而其中的内容都显示不出来。
 
L

lmcz716

Unregistered / Unconfirmed
GUEST, unregistred user!
可以试试在创建的窗体中加入ProgressBar控件,在WIN32下。
 
H

Haoye

Unregistered / Unconfirmed
GUEST, unregistred user!
可是我想显示一些文字信息怎么办?
 
J

jlutt-sadan

Unregistered / Unconfirmed
GUEST, unregistred user!
form2.show 后加上
form2.update
每次改变文字信息时加上
form2.update
 
W

wjfgm

Unregistered / Unconfirmed
GUEST, unregistred user!
H

Haoye

Unregistered / Unconfirmed
GUEST, unregistred user!
还是不行。form2显示了一下又恢复以前那种空白显示了
 

粗心大意

Unregistered / Unconfirmed
GUEST, unregistred user!
大哥,你又不是写的多线程,这时候处理数据的线程已经占用CPU,你显示的窗口当然是空白啦。
可以加上以下语句:Application.ProcessMessages.转让一定的时间给消息队列中的其它消息。
 
H

Haoye

Unregistered / Unconfirmed
GUEST, unregistred user!
to 粗心大意:
我是delphi的初学者,还请包涵。:)
可是我用了还是不行呀
 
P

pink_wt

Unregistered / Unconfirmed
GUEST, unregistred user!
我觉得最好还是使用多线程吧
 
A

alicewen

Unregistered / Unconfirmed
GUEST, unregistred user!
肯定不行了,当你批处理时,这一过程没有执行完,其它任何事件都不能调用起
来,如果将批处理分成几个段,再用一个ProgressBar分批显示这几个段,再加上
Application.ProcessMessages.这样方可达到进度条功能。
 

诸葛白痴

Unregistered / Unconfirmed
GUEST, unregistred user!
1、不行啊,你必须新建一个仿模式窗口来做,如果form2是模式的话你是无法更新的,如果
不是又怕被用户切换了
2、如果你用多线程就不会这样了,不用多线程就按上面几位兄弟的做法吧
 
H

Haoye

Unregistered / Unconfirmed
GUEST, unregistred user!
那现在我不想用多线程而且form2也无需修改其内容了,就让它在form1处理大量数据时
如常显示出来要怎么做?
 
L

lsz_615

Unregistered / Unconfirmed
GUEST, unregistred user!
form2.refresh;
或者说没法解决
 
顶部