【发布时间】:2013-05-25 03:08:52
【问题描述】:
我正在开发一个程序,上面有一个 StringGrid;当按下特定按钮时,我的程序将 stringgtid 保存到 c:\myfolder\tab9.txt。我想放置一个进度条,指示保存过程结束时还剩多少时间,因为有时网格有很多行,可能需要一些时间。我正在使用此代码:
procedure SaveSG(StringGrid:TStringGrid; const FileName:TFileName);
var
f: TextFile;
i,k: Integer;
begin
AssignFile(f, FileName);
Rewrite(f);
with StringGrid do
begin
Writeln(f, ColCount); // Write number of Columns
Writeln(f, RowCount); // Write number of Rows
for i := 0 to ColCount - 1 do // loop through cells of the StringGrid
for k := 0 to RowCount - 1 do
Writeln(F, Cells[i, k]);
end;
CloseFile(F);
end;
我这样调用程序:SaveSG(StringGrid1,'c:\myfolder\myfile.txt');。我的问题是我不明白如何做一个指示保存进度的进度条。目前我只声明了ProgressBar1.Position:=0 和ProgressBar1.Max:=FileSize。你有什么建议吗?
【问题讨论】:
-
如果你想正确地这样做,你应该在它自己的线程中加载文件,然后定期向进度条发送消息。
标签: delphi