Delphi用TActionList实现下载文件的方法
Delphi中的TActionList有个标准动作TDownLoadURL,内部是使用的URLDownloadToFile,它下载文件时会定时产生OnDownloadProgress事件,这样就可以用进度条显示。
本文讲述了Delphi用TActionList实现下载文件的方法,实现代码如下所示:
uses
Windows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,Dialogs,ExtActns,ActnList,StdCtrls,ComCtrls;
type
TForm1=class(TForm)
Button1:TButton;
ActionList1:TActionList;
ProgressBar1:TProgressBar;
procedureButton1Click(Sender:TObject);
private
{Privatedeclarations}
procedureURL_OnDownloadProgress
(Sender:TDownLoadURL;
Progress,ProgressMax:Cardinal;
StatusCode:TURLDownloadStatus;
StatusText:String;varCancel:Boolean);
public
{Publicdeclarations}
end;
var
Form1:TForm1;
implementation
{$R*.dfm}
procedureTform1.URL_OnDownloadProgress;
begin
ProgressBar1.Max:=ProgressMax;
ProgressBar1.Position:=Progress;
end;
procedureTForm1.Button1Click(Sender:TObject);
begin
withTDownloadURL.Create(self)do
try
URL:='https://www.nhooo.com/images/logo.gif';
FileName:='logo.gif';
OnDownloadProgress:=URL_OnDownloadProgress;
ExecuteTarget(nil);
finally
Free;
end;
showMessage('OK');
ProgressBar1.Max:=0;
end;