关于进度条的问题,请大家进来看看!

kedy520 2006-08-24 03:20:09
现在想,在把某目录下的内容传送到数据库的同时,通过progressbar来显示当前传输的进度,进度条应随文件的传输而变化。自己写了半天,进度条的显示就是和文件传输关联不上!进度条显示和文件不能正常的联系(即文件传输完,则进度条显示完),请大家帮忙看看,
...全文
185 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
kedy520 2006-08-28
  • 打赏
  • 举报
回复
还是没有对,情大家帮忙看看!
yuehaiyang 2006-08-24
  • 打赏
  • 举报
回复
楼上的应该没问题
wywry 2006-08-24
  • 打赏
  • 举报
回复
procedure TForm1.Button2Click(Sender: TObject);
var
i,iCount:Integer;
begin
StatusBar1.Panels[0].Text:='传送中....';
iCount:=FileListBox1.Count;
ShowMessage(IntToStr(FileListBox1.Count));
with progressBar do
begin
try
Min:=0
Max:=iCount;
Position:=0;
for I:=0 to iCount-1 do
begin
Position:=i+1;
//把list中所有文件传入数据库
.....................

Application.ProcessMessages;
end;
finally
Free;
end;
end;

kedy520 2006-08-24
  • 打赏
  • 举报
回复
procedure TForm1.Button2Click(Sender: TObject);
var
i,iCount:Integer;
begin
StatusBar1.Panels[0].Text:='传送中....';
iCount:=FileListBox1.Count;
ShowMessage(IntToStr(FileListBox1.Count));
with progressBar do
begin
try
Min:=0
Max:=iCount;
Position:=0;
for I:=0 to iCount-1 do
begin
Position:=i+1;
Application.ProcessMessages;
end;
finally
Free;
end;
end;

//把list中所有文件传入数据库
.....................
end;
wudi_1982 2006-08-24
  • 打赏
  • 举报
回复
代码贴出来看看。
kedy520 2006-08-24
  • 打赏
  • 举报
回复
wudi:
我传输到数据库的是文件,用你的方法,好像进度条没有显示!
wudi_1982 2006-08-24
  • 打赏
  • 举报
回复
某目录下的内容传送到数据库的同时,通过progressbar来显示当前传输的进度,进度条应随文件的传输而变化。

如果你要传输到数据库的是文件名,将ProgressBar1.max设置为文件总数,然后循环录入时,ProgressBar1.Position 加一即可
mdejtod 2006-08-24
  • 打赏
  • 举报
回复
要做到完全同步,好像不太行,给用户一个假象应该是可以的,你传输数据的时候用一个循环,进度条就写在循环里面就可以了,给你一个例子,进度条是在另一个窗体的上:
E_Jdf.Label1.Caption:='正在读取数据,请稍候.........';
E_JdF.ProgressBar1.Position := 0;
E_JdF.ProgressBar1.max := 5000; //开始从EXCEL中取数,取完数后关闭EXCEL
E_JdF.Show;
for i := 1 to 5000 do //5000为最大数
begin
Application.ProcessMessages;
E_JdF.ProgressBar1.Position := E_JdF.ProgressBar1.Position + 1;
E_JdF.Label2.Caption := '当前进度 ' + floattostr(i / 5000 * 100) + '%';
{ 数据操作,结束后将进度条的Position 设为最大值就可以了}
E_JdF.ProgressBar1.Position := 5000;
Application.MessageBox('数据读取完毕', '提示', mb_ok);
E_JdF.Close;

2,498

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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