Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
-
Dragon
- Beiträge: 162
- Registriert: Mi 31. Jul 2013, 15:07
- OS, Lazarus, FPC: Ubuntu 16.04, CodeTyphon 5.80
Beitrag
von Dragon »
Gibt es eine elegantere art, ein farbigen Text im CLI auszugeben als:
sowas wie
Zuletzt geändert von
Dragon am Do 18. Feb 2016, 22:26, insgesamt 1-mal geändert.
-
Mathias
- Beiträge: 6194
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Beitrag
von Mathias »
Selbst eine procedure schreiben.
Code: Alles auswählen
procedure ColWriteLn(col: byte; s: string);
begin
TextColor(col);
WriteLn(s);
end;
begin
ColWriteLn(red, 'Hello World');
end.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
-
Dragon
- Beiträge: 162
- Registriert: Mi 31. Jul 2013, 15:07
- OS, Lazarus, FPC: Ubuntu 16.04, CodeTyphon 5.80
Beitrag
von Dragon »
Hoppla
. Hätte ich auch selbst drauf kommen können, ist halt zu offensichtlich.
danke Mathias
-
Mathias
- Beiträge: 6194
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Beitrag
von Mathias »
So könnte man so etwas elegant lösen, ohne Angabe wird der Standard-Wert übernommen.
Code: Alles auswählen
procedure ColWriteLn(s: string; col: byte = LightGray);
begin
TextColor(col);
WriteLn(s);
end;
begin
ColWriteLn('Hello World', Red);
ColWriteLn('Hello World'); // Standard grau
ColWriteLn('Hello World', Green);
end.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
-
Warf
- Beiträge: 1910
- Registriert: Di 23. Sep 2014, 17:46
- OS, Lazarus, FPC: Win10 | Linux
- CPU-Target: x86_64
Beitrag
von Warf »
Mathias hat geschrieben:So könnte man so etwas elegant lösen, ohne Angabe wird der Standard-Wert übernommen.
Code: Alles auswählen
procedure ColWriteLn(s: string; col: byte = LightGray);
begin
TextColor(col);
WriteLn(s);
end;
begin
ColWriteLn('Hello World', Red);
ColWriteLn('Hello World'); // Standard grau
ColWriteLn('Hello World', Green);
end.
Wenn man nun aber den Standardwert umstellt?