C++ Farbe zuweisen für Eingabe

azdr

Lieutenant
Registriert
Feb. 2005
Beiträge
685
Hab ne Frage wie kann ich den eingegebenen Text farbig im Dos fenster darstellen.

Die farbige Ausgabe ist mir bekannt. das geht zb. so:

textcolor(12); //Rot
cprintf ("test test test");


Wie kann ich die Eingabe farbig realliesieren?

mfg
 
farben bekommst du in dos mittels der esc-sequenzen.
schaust dir am besten hier mal an: http://www.tfh-berlin.de/~kempfer/skript_c/Kap07.html
da ist auch eine tabelle mit den farben drin.
in deinem fall einfach vor der ersten eingabe die farbe auf diese weise setzen, dann sollte die eingabe auch farbig sein.
 
Zuletzt bearbeitet:
thx ghorst, ne nette Seite. mit exc kann man viel mehr machen als nur farbe zuweisen
 
@gohrst eine frage irgendwie gelingt mir die farbezuweisung mit den esc sequenzen nicht.

z.b .: wenn ich schreibe
ESC[0;31;m bekomme ich ne fehlermeldung hab genau so gemacht wie es im scriptium steht.

mach ich da was falsch?

Set Graphics Rendition:

ESC[#;#;....;#m Set display attributes where # is

0 for normal display
1 for bold on
4 underline (mono only)
5 blink on
7 reverse video on
8 nondisplayed (invisible)
30 black foreground
31 red foreground
32 green foreground
33 yellow foreground
34 blue foreground
35 magenta foreground
36 cyan foreground
37 white foreground
40 black background
41 red background
42 green background
43 yellow background
44 blue background
45 magenta background
46 cyan background
47 white background
 
Zuletzt bearbeitet:
die null hinter dem esc gehört da auch nicht hin. die ist nur fürs zurücksetzen. das letzte semikolon ist auch zuviel.
hier der korrekte code für das rot:

//das ist aus dem skript "geliehen"
#define FORECOLOR_RED printf("\033[31m")
int main()
{
FORECOLOR_RED;
printf("test\n");
return 0;
}
 
Zuletzt bearbeitet:
Zurück
Oben