Delphi 使用idhttp下載显示进度以及大小

来源:互联网 发布:ubuntu安装ssh server 编辑:程序博客网 时间:2024/05/16 07:38

downloadwithprocessbar

在更新程式時,需要知道目前下載到多少百分比及大小怎麼做?

Delphi使用idhttp及IdAntiFreeze(防止程式看起來當掉)二個元件就可以做得到。順便列下關鍵程式碼

procedureTForm1.BtnDownloadClick(Sender: TObject);
var
  tStream: TMemoryStream;
begin
  tStream := TMemoryStream.Create;
  try
    IdHTTP1.Get(EdtSource.Text, tStream);
    tStream.SaveToFile(EdtTarget.Text);
    ShowMessage('Download Success!');
  except
    ShowMessage('Download Fail!');
  end;
  tStream.Free;
end;
 
procedureTForm1.IdHTTP1Work(ASender: TObject; AWorkMode: TWorkMode;
  AWorkCount:Int64);
begin
  Label1.Caption := BytesToStr(aWorkCount);
  ProgressBar1.Position := aWorkCount;
  <a title="Update" href="http://superlevin.ifengyuan.tw/tag/update/">Update</a>;
end;
 
procedureTForm1.IdHTTP1WorkBegin(ASender: TObject; AWorkMode: TWorkMode;
  AWorkCountMax:Int64);
begin
  ProgressBar1.Max := aWorkCountMax;  // Set File total size
  Label2.Caption := BytesToStr(aWorkCountMax);
  Update;

end;


代码:http://pan.baidu.com/s/1kp9hs

0 0
原创粉丝点击