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: TButtonrog; ActionList1: TActionsProlick1: TAction: 159971; : TObject); private { Private declarations } procedure URL_OnDownloadProgress (Sender: TDownLoadURL; Progress, ProgressMax: Cardinal; StatusCode: TURLDownloadStatus; StatusText: String; var Cancel: Boolean) ; public { Public declarations }1Form; dfm} procedure Tform1.URL_OnDownloadProgress;begin ProgressBar1.Max:= ProgressMax; ProgressBar1.Position:= Progress;end; procedure TForm1.Button1Click(Sender: TObject);begin with TDownloadURL.Create(self) doL. .COm/images/logo.gif'; FileName := 'logo.gif'; OnDownloadProgress := URL_OnDownloadProgress; ExecuteTarget(nil) ; finally Free; end; showMessage('OK'); ProgressBar1.Max := 0;end;