Предположим нужно загрузить файл из интернета, но загрузка файла занимает некоторое время. Чтобы пользователю было комфортно работать с приложением, достаточно ему показать полосу прогресса, чтобы он видел сколько уже сделано, а сколько еще осталось.
Как загрузить файл из сети читаем тут.
Все остается точно также, как и в том примере, только нужно будет добавить ProgressBar и пару обработчиков событий:
procedure TForm1.IdHTTP1Work(ASender: TObject; AWorkMode: TWorkMode;
AWorkCount: Int64);
begin
ProgressBar1.Position := AWorkCount;
end;
procedure TForm1.IdHTTP1WorkBegin(ASender: TObject; AWorkMode: TWorkMode;
AWorkCountMax: Int64);
begin
ProgressBar1.Position := 0;
ProgressBar1.Max := AWorkcountMax;
end;
Вот и все. Достаточно просто. Дополнять нечего, все очень понятно.
Ну а код скачивания выглядит так.:
procedure TForm1.Button1Click(Sender: TObject);
var FileStream :TFileStream;
begin
FileStream := TFileStream.Create('c:\имя_файла.txt', fmCreate);
IdHTTP1.Get('http://Адрес/', FileStream);
FileStream.Free;
end;
Просмотров: 10892
2. Rayne
коротко и понятно, спасибо.
Больше бы таких примеров по разным темам, когда пишешь программу на раз и предлагают в помощь страницы кода - нехорошо =\ |
Copyright © 2008 - 2018 Программирование на Delphi для начинающих и не только.
Полнота авторских прав на все материалы, опубликованные на сервере DelphiDevelop.ru принадлежит их авторам.
Перепечатка материалов разрешается с указанием авторства и гиперссылки на первоисточник информации.