这样的进度条如何做?

sand79 2003-08-21 10:12:24
我想要的功能是,当用户点击一个按钮时,执行查询或其它命令,因为数据量的原因,可能要一点时间,这时希望用一个进度条来显示(当然,不一定要求进度条的百分比就是执行的百分比,只是要在执行过程中,让别人知道一下正在后台进行操作。)
我的方法是:

with query do
begin
sql.clear;
sql.add('select * from db where ……');
open;
F_ji:=TF_ji.create(self); **
F_ji.showmodal; **
F_ji.free; **
end;

F_ji 是放进度条的窗体,我想的是,一边执行后台的数据库操作,一边显示进度条,但是我这样做,都不行啊,因为程序执行是从上到下的,都执行完操作时才打开 我显示进度条的窗体。各位,我的要求如何做啊?



...全文
33 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ly_liuyang 2003-08-22
  • 打赏
  • 举报
回复
一般是使用线程创建那个窗口的
这样不影响主线程的运行
walkmangood 2003-08-22
  • 打赏
  • 举报
回复
up
eaglezhao 2003-08-22
  • 打赏
  • 举报
回复
你这种方法当然不行了。
有两种方法:1.使用一个时钟控件来控制。在调用Query.Open之前让时钟Active,在时钟的事件中控制进度条;
2.创建一个线程,在线程内向进度条窗体SendMessage来推进进度条。
具体做法就不贴代码了,你自己查查帮助做吧。
qufo 2003-08-22
  • 打赏
  • 举报
回复
Mark
wangguan007 2003-08-22
  • 打赏
  • 举报
回复
关注啊!
gh_sheet 2003-08-21
  • 打赏
  • 举报
回复
我也想知道
tonycjl 2003-08-21
  • 打赏
  • 举报
回复
APPLICATION。ProcessMessages
要不就行进程
lxpbuaa 2003-08-21
  • 打赏
  • 举报
回复
在数据操作过程中改变进度啊!

—————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
—————————————————————————————————

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧