Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#18

AW: IdFTP + progressbar wie ?!

  Alt 6. Nov 2013, 15:15
Du könntest natürlich die Events beim GetSize abhängen (z.B. FTP.DownloadWorkBegin:=nil; ) und beim get wieder anhängen (z.B. FTP.DownloadWorkBegin:=FTPDownloadWorkBegin; )
oder über eine Variable die ausgabe steuern (beim GetSize einen Boolean auf True setzen und in den Events if x then Exit; ).

AWorkCountMax hat dir nicht gefallen?
Delphi-Quellcode:
//******************************************************************************
// FTP Download with Progressbar *
//******************************************************************************

procedure TForm1.Button20Click(Sender: TObject);
begin
  Try
    FTPDownload.Host := 'Server';
    FTPDownload.Username := 'User';
    FTPDownload.Password := 'Password';
    FTPDownload.Connect;
    FTPDownload.ChangeDir('/Folder1/Folder2/');
    FTPDownload.Get('setup.exe', 'C:\Temp\setup.exe', True);
    FTPDownload.Disconnect;
  Except
    FTPDownload.Free; // wieso Free? (sei froh, daß dir TComponent die Form-Variable FTPDownload "zufällig" auf nil setzt, wenn sie published ist)
    Exit;
  End;

end;

procedure TForm1.FTPDownloadWorkBegin(ASender: TObject; AWorkMode: TWorkMode; AWorkCountMax: Int64);
begin
  with FTPProgress do
  begin
    Max := AWorkCountMax;
    Position := 0;
    Visible := true;
  end;
end;

procedure TForm1.FTPDownloadWork(ASender: TObject; AWorkMode: TWorkMode; AWorkCount: Int64);
begin
  with FTPProgress do
    Position := AWorkCount;
end;

procedure TForm1.FTPDownloadWorkEnd(ASender: TObject; AWorkMode: TWorkMode);
begin
  with FTPProgress do
    Visible := false;
end;
$2B or not $2B

Geändert von himitsu ( 6. Nov 2013 um 15:17 Uhr)
  Mit Zitat antworten Zitat