![]() |
[Konsolenanwendung] Fortschrittsanzeige
Hey Leute, ich habe eine etwas größere Schleife die Daten an einen MySQL Server überträgt. Wie würdet ihr am besten den aktuellen Fortschritt anzeigen lassen?
Im Moment hab ichs per
Delphi-Quellcode:
Sieht aber irgendwie noch nicht so toll aus. Freu mich über Vorschläge:stupid:
WriteLn(Aktuelle Line / von alle Lines)
|
AW: [Konsolenanwendung] Fortschrittsanzeige
Delphi-Quellcode:
Gruß
repeat / while...
... if LineNo and $0F = 0 then write(inttostr(LineNo)+' of '+maxlines+#13); ... until... writeln(inttostr(LineNo)+' of '+maxlines); K-H |
AW: [Konsolenanwendung] Fortschrittsanzeige
Liste der Anhänge anzeigen (Anzahl: 1)
Delphi-Quellcode:
iProcent := i * 100 div TransNodes.Count;
WriteLn(IntToStr(iProcent) + '% Finished'); |
AW: [Konsolenanwendung] Fortschrittsanzeige
Delphi-Quellcode:
Endlose Möglichkeiten.
Const
ProgressbarWidth = 60; begin for i :=1 to maxCount do begin progess := muldiv(progressBarWidth,i,maxCount); write (#13,'['+StringOfChar(progress,'*')+StringOfChar(progressBarWidth-Progress,'-')+']'; end end; Sehr beliebt auch :
Delphi-Quellcode:
Der Phantasie sind keine Grenzen gesetzt.
Const
Spin = '|/-\'; begin for i :=1 to maxCount do begin percent := muldiv(100,i,maxCount); write (#13, spin[i mod length(Spin) + 1],' ',percent+' % done.); end end; Weiß nich, ob das überhaupt funktioniert. Will sagen: Getippt und nicht getestet. Wichtig ist der "Trick" mit dem #13 (Carriage return = Wagenrücklauf). |
AW: [Konsolenanwendung] Fortschrittsanzeige
@Furtbichler
Musste dein Sample gering anpassen gefällt mir jedenfalls sehr viel besser als die 1000 Angabe in Prozent von mir da oben :oops:
Delphi-Quellcode:
iProcent := muldiv(100,i,TransNodes.Count);
write (#13, spin[i mod length(Spin) + 1],' ',IntToStr(iProcent)+' % done.'); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz