Im Konsolenprogramm in der vorherigen zeile weiterschreiben

Für Dinge zum Forum, Kritik, Verbesserungsvorschläge, Umfragen und ähnliches.
Antworten
Komoluna
Beiträge: 565
Registriert: So 26. Aug 2012, 09:03
OS, Lazarus, FPC: Windows(10), Linux(Arch)
CPU-Target: 64Bit

Im Konsolenprogramm in der vorherigen zeile weiterschreiben

Beitrag von Komoluna »

Liebes Forum, kann man irgendwie bei einem Konsolenprogrammm eine geschriebene Zeile fortsetzen?
also, dass bei diesem Programm:

Code: Alles auswählen

 
write('abc');
write(' und ');
write('xyz');
 

dann in der Konsole folgendes steht:

Code: Alles auswählen

 
abc und xyz
 


Danke im Voraus

Komoluna
Programmer: A device to convert coffee into software.

Rekursion: siehe Rekursion.

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Re: Im Konsolenprogramm in der vorherigen zeile weiterschrei

Beitrag von theo »

Der Code sollte doch genau das machen?
Was macht er denn sonst?

Komoluna
Beiträge: 565
Registriert: So 26. Aug 2012, 09:03
OS, Lazarus, FPC: Windows(10), Linux(Arch)
CPU-Target: 64Bit

Re: Im Konsolenprogramm in der vorherigen zeile weiterschrei

Beitrag von Komoluna »

sry, hatte Write und Writeln
verwechselt
Programmer: A device to convert coffee into software.

Rekursion: siehe Rekursion.

Komoluna
Beiträge: 565
Registriert: So 26. Aug 2012, 09:03
OS, Lazarus, FPC: Windows(10), Linux(Arch)
CPU-Target: 64Bit

Re: Im Konsolenprogramm in der vorherigen zeile weiterschrei

Beitrag von Komoluna »

noch eine Frage:
Kann man eine mit Writeln oder Write geschriebene Zeile oder auch einzelne Zeichen wieder löschen(in der Konsole)?
Programmer: A device to convert coffee into software.

Rekursion: siehe Rekursion.

Socke
Lazarusforum e. V.
Beiträge: 3158
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: Im Konsolenprogramm in der vorherigen zeile weiterschrei

Beitrag von Socke »

Komoluna hat geschrieben:Kann man eine mit Writeln oder Write geschriebene Zeile oder auch einzelne Zeichen wieder löschen(in der Konsole)?

Nein. Dazu musst du anders auf die Konsole zugreifen.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

Achtzig
Beiträge: 90
Registriert: Mo 15. Okt 2007, 13:09
OS, Lazarus, FPC: Debian
CPU-Target: xxBit

Re: Im Konsolenprogramm in der vorherigen zeile weiterschrei

Beitrag von Achtzig »

Du könntest Steuerzeichen verwenden, wenn Du nur mit Write arbeitest:

Write('90% Erledigt');
Write(#13);
Write('Alles erledigt');

Ein Zeichen zurück geht man dann mit #8. Wenn Du die gesamte Zeile in einem Puffer vorhälst, kannst Du diesen wie Du willst überschreiben und dann erneut mit #13+Puffer in der aktuellen Zeile ausgeben. Der Puffer sollte aber mit Leerzeichen aufgefüllt werden. #13 setzt die Schreibmarke auf die erste Position, der vorherige Text bleibt aber stehen. Wenn die erneute Ausgabe kürzer als der vorherige Wert ist, würden die restlichen Zeichen stehen bleiben und müssen deswegen mit Leerzeichen überschrieben werden.

Antworten