Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Text auf Konsole überschreiben (https://www.delphipraxis.net/112974-text-auf-konsole-ueberschreiben.html)

kng 30. Apr 2008 15:17


Text auf Konsole überschreiben
 
Hi,

Ich habe eine Konsolenanwendung, in der in verschiedenen Prozeduren immer der Fortschritt angezeigt wird.
Bisher mache ich das so
Delphi-Quellcode:
WriteLn(Format('%u percent complete.', [iPercent]));
Wie kann man den Fortschritt jetzt immer überschreiben, so dass nicht immer eine neue Zeile erzeugt wird?

Danke!

Muetze1 30. Apr 2008 15:32

Re: Text auf Konsole überschreiben
 
Delphi-Quellcode:
Write(Format(#13+'%u percent complete.', [iPercent]));
Vorher einmalig ausserhalb der Schleife WriteLn; um die Zeile zu erzeugen. Danach kannst du mit

Delphi-Quellcode:
WriteLn('done.                                   ');
die Ausgaben überdecken.

kng 30. Apr 2008 16:00

Re: Text auf Konsole überschreiben
 
Danke, das funktioniert.

Allerdings wird immer ein Zeichen vom letzten geschriebenen Wort abgeschnitten, sobald sich die die Prozentzahl im 2 bzw. 3-stelligen Bereich befindet.

Kann man das auch noch verhindern?

//Edit
Habs jetzt gelöst, indem ich einfach ein Leerzeichen als letztes Zeichen angehängt habe.
Ist zwar nicht so schön, aber was solls... :zwinker:

Danke nochmal!


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:17 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz