Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Ausgabe (Text) automatisch unterstreichen lassen? (https://www.delphipraxis.net/114912-ausgabe-text-automatisch-unterstreichen-lassen.html)

coly546 2. Jun 2008 20:24


Ausgabe (Text) automatisch unterstreichen lassen?
 
Guten Abend liebes Forum,
im Rahmen des Informatikunterrichtes bin ich auf eine Problemstellung gestoßen,
wo ich keinen Ansatz für finde. Das Problem bezieht sich auf eine Konsolen-Anwendung.

Es geht im speziellen um eine Text-Ausgabe, die automatisch unterstrichen werden soll.


Bisher programmierten wir das immer wie folgt:

Delphi-Quellcode:
writeln('                  Testueberschrift');
writeln('                  ----------------');
halt ganz primitiv und einfach, aber leider nicht automatisch sondern programmiert.

Nun habe ich schon überlegt, ob man das vielleicht mit einer If-Then-Else Anweisung machen könnte.
Quasi wenn Text vorhanden, dann writeln(' ------------'); sonst mache nichts oder sowas in der Art. Leider habe ich auch im Internet keinerlei Informationen darüber gefunden wie man das Automatisieren könnte.



Um Rat und/oder Lösungsansätzen wäre ich euch sehr dankbar.




Beste Grüße und noch einen schönen Abend.
coly546

Dax 2. Jun 2008 20:27

Re: Ausgabe (Text) automatisch unterstreichen lassen?
 
Du bastelst dir einfach eine eigene WriteLn-Funktion ;) Diese Funktion bricht den Text auf Konsolenbreite um und schreibt nacheinander erst Text, Unterstreichung, Text, Unterstreichung usw.

coly546 2. Jun 2008 20:35

Re: Ausgabe (Text) automatisch unterstreichen lassen?
 
Hallo,
danke erstmal für Ihre Antwort.

Kann es sein das es dann immer noch nicht automatisch ist?
Es kann auch gut sein, dass ich mich gerade ein bisschen
bedeppert anstelle. Dann berichtigen Sie mich bitte.

Wenn ich Sie richtig verstanden habe sollte, dass dann in etwa so
aussehen:

Delphi-Quellcode:
writeln('Text.....................bis auf die Konsolenbreite');
writeln('---------------------------------------------------');
writeln('Text.....................bis auf die Konsolenbreite');
writeln('---------------------------------------------------');
writeln('Text.....................bis auf die Konsolenbreite');
writeln('---------------------------------------------------');
writeln('Text.....................bis auf die Konsolenbreite');
writeln('---------------------------------------------------');

//und so weiter
Nur dann wäre es ja immer noch nicht automatisch?


//Add

Mir ist gerade noch was eingefallen. Wäre es vielleicht möglich mit Hilfe von
einer If-Then-Else-Anweosung das zu gestallten? Sprich wenn writeln da steht, dann schreibe('----------'), sonst mache nichts.

omata 2. Jun 2008 20:37

Re: Ausgabe (Text) automatisch unterstreichen lassen?
 
Die Idee ist folgende...

Delphi-Quellcode:
procedure MyWriteLn(text:string);
var i:byte;
begin
  writeln(text);
  for i:=1 to length(text) do
    write('-');
  writeln;
end;
Gruss
Thorsten

coly546 2. Jun 2008 20:49

Re: Ausgabe (Text) automatisch unterstreichen lassen?
 
Hallo Thorsten,
danke für deine super Idee :-D


Ähm...das Problem ist nur das er mir nicht die vollständige Überschrift
unterstreicht. :?

Delphi-Quellcode:
program Project;

{$APPTYPE CONSOLE}

uses
  SysUtils;
var text:string;

//001----Procedure-------Anfang--------------
procedure MyWriteLn(text:string);
var i:byte;
begin
  writeln('DasisteineUeberschrift');
  for i:=1 to length(text) do
    write('-');
  writeln;
end;
//001----Procedure--------Ende----------------

//-------Hauptprogramm----Anfang--------------
begin
 MyWriteLn('text:string');
 readln;
end.
//-------Hauptprogramm----Ende----------------

Gruß coly546

Dax 2. Jun 2008 20:52

Re: Ausgabe (Text) automatisch unterstreichen lassen?
 
Delphi-Quellcode:
program Project;

{$APPTYPE CONSOLE}

uses
  SysUtils;

//001----Procedure-------Anfang--------------
procedure MyWriteLn(text:string);
var i:byte;
begin
  writeln(text);
  for i:=1 to length(text) do
    write('-');
  writeln;
end;
//001----Procedure--------Ende----------------

//-------Hauptprogramm----Anfang--------------
begin
MyWriteLn('DasisteineUeberschrift');
readln;
end.
//-------Hauptprogramm----Ende----------------

coly546 2. Jun 2008 20:58

Re: Ausgabe (Text) automatisch unterstreichen lassen?
 
Oh, dann lag es nur an meiner Unfähigkeit.


Vielen Dank, schön das hier auch Anfänger geholfen wird.

Danke!

Blackheart 2. Jun 2008 21:34

Re: Ausgabe (Text) automatisch unterstreichen lassen?
 
Zitat:

Zitat von coly546
...Vielen Dank, schön das hier auch Anfänger geholfen wird...

Profis brauchen keine hilfe. :wink:

Dax 2. Jun 2008 21:37

Re: Ausgabe (Text) automatisch unterstreichen lassen?
 
Zitat:

Zitat von Blackheart
Profis brauchen keine hilfe. :wink:

*nääht* Behauptungszonk ;)

Blackheart 2. Jun 2008 21:42

Re: Ausgabe (Text) automatisch unterstreichen lassen?
 
Profi erwischt, da haben wir es wieder. :thumb: :wink:


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:39 Uhr.
Seite 1 von 3  1 23      

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