Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > ProgressBar


Автор: ProgressBar 20.8.2004, 08:38
Подскажите пож-та чайнику Не получается синхронизировать ProgressBar и чтение файла
хочется что бы при чтении 1 строки файла появлялся 1 квадрат в ProgressBar Ну и соответственно как дошли до конца файла так и заполнился до конца ProgressBar
Написал вот так!!!!!!!!!!!!!!! Не работает

var
f :TextFile;
str :String;
count:Integer;
step :Integer;
i :integer;

begin
// подсчет строк в файле
chdir('с:\progress');
AssignFile(f,'c:\progress\aaa.ini');
{$I-}Reset(f);{$I+}
if IOResult<>0 then Exit;
While not eof(f) do
begin
Readln(f,str);
count:= i+1; // до пустим 400
end ;
CloseFile(f);

//готовим ProgressBar
ProgressBar1.Min:=0;
ProgressBar1.Max:=count;
Step:=ProgressBar1.Max div 100 ; // шаг = 4

AssignFile(f,'w:\temp\mymon\inimag.ini');
{$I-}Reset(f);{$I+}
if IOResult<>0 then Exit;
While not eof(f) do
begin
Readln(f,str);
ListBox1.Items.Add(str);
sleep(100);
progressbar1.Position := progressbar1.Position + progressbar1.Step;
end ;
CloseFile(f);
qstn.gif end;

Автор: gemoglobin 20.8.2004, 09:43
вначале бы похорошему поставить count = 0
а еще добавить
progressbar1.Position := progressbar1.Position + progressbar1.Step;
Application.ProcessMessages;

Автор: Dreyka 20.8.2004, 09:47
Я не пойму зачем тебе вообще функция Step.
Вот подсчитал ты сколько строк в тектовом файле, установил ProgressBar1.Max в равным этому числу, а затем просто в чтении из файла после считывания каждой строки добавляешь к Progressbar1.Position единицу.
Или я чего-то не понимаю biggrin.gif

Автор: Alex 20.8.2004, 10:11
Люди ну когда же вы научитесь FAQ читать qstn.gif qstn.gif qstn.gif
http://forum.vingrad.ru/index.php?showtopic=1924

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)