Hallo,
dieses Thema wurde schon paar mal behandelt, aber bei mir funktioniert die Fortschrittsanzeige beim Download mit der IDFTP Koponente leider nicht.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27:
| procedure TForm2.IdFTP1Work(ASender: TObject; AWorkMode: TWorkMode; AWorkCount: Int64); var S: string; TotalTime: TDateTime; H, M, Sec, MS: Word; DLTime: Double; AverageSpeed:Extended; begin TotalTime := Now - STime; DecodeTime(TotalTime, H, M, Sec, MS); Sec := Sec + M * 60 + H * 3600; DLTime := Sec + MS / 1000; if DLTime > 0 then AverageSpeed := (AWorkCount / 1024) / DLTime; S := FormatFloat('0.00 KB/s', AverageSpeed); case AWorkMode of wmRead: label7.caption := 'Download speed ' + S; wmWrite: label7.caption := 'Uploade speed ' + S; end;
ProgressBar1.Position := AWorkCount; label8.Caption := Format('%.2f von %.2f kB',[AWorkCount / 1024, ProgressBar1.Max / 1024]); ProgressBar1.Update; application.ProcessMessages; end; |
und...
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7:
| procedure TForm2.IdFTP1WorkBegin(ASender: TObject; AWorkMode: TWorkMode; AWorkCountMax: Int64); begin ProgressBar1.Max := AWorkCountMax; ProgressBar1.Position := 0; STime:=now; end; |
aworkcountmax bleibt bei mir "0". Woran kann das liegen?
Gruß Cyberax