gpt4 book ai didi

delphi - 显示耗时过程的进度

转载 作者:行者123 更新时间:2023-12-03 19:01:38 25 4
gpt4 key购买 nike

对不起,我的英语不好...
我想使用Delphi 7创建一个对话框窗口,以显示当我必须运行缓慢的进程时应用程序中发生了一些事情。
我的想法是做一些我可以使用的事情:

with TMyDialog.Create do
begin
//call the time consuming method here
Free;
end;


当我创建对话框时,会显示一个带有动画或其他内容的窗口,并且该窗口将在耗时的方法结束后(在自由方法上)消失(如果我可以手动从该对话框中更新进度,那将是很好的)过程给我这样的信息:

with TMyDialog.Create do
begin
while time_consuming_method do
begin
UpdateStatusOnMyDyalog();
end;
Free;
end;


但通常情况下,这只是一个动画,可以显示出正在发生的事情。

是否有人做过这样的事情,是否知道某个组件或对以最干净,最简单的方式进行操作的最佳方法有任何建议?

最佳答案

不好但很简单的方法是在Application.ProcessMessages期间调用UpdateWindow(Handle)time_consuming_method(更新表单)并增加进度条。更好的方法是将您的time_consuming_method包装到带有OnProgress事件的类中。最后,正如其他人所建议的那样,您可以为time_consuming_method使用单独的线程-这是最强大的技术,但学习曲线最差。

关于delphi - 显示耗时过程的进度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1591119/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com