C++ [INFO] Text

05/29/2012 08:06 Crystal-Craft#1
hey leute ich habe ein frage und zwar will ich in c++ in einer consolen anwendung ein text so ausgeben:

[INFO] Text


geht das? wenn ja wie?
05/29/2012 10:11 2n0w#2
Da kenne ich mich leider nicht aus, aber falls du den ganzen Text ändern willst kannst du das per system("color 0a"); machen.
Edit: Das hier sieht schon besser aus:
Edit2: Da war wohl jemand schneller ^^
Code:
#include //deine Includes
...
//Farbe definieren
    WORD SetColor(WORD new_color)
{
    WORD old_color=0;
    HANDLE hStdOut = GetStdHandle(STD_OUTPUT_HANDLE);
    CONSOLE_SCREEN_BUFFER_INFO csbi;
    GetConsoleScreenBufferInfo(hStdOut,&csbi);
    old_color = csbi.wAttributes;
    SetConsoleTextAttribute(hStdOut,new_color);

    return old_color;
}

...

main()
{

int ...
bool...
//deine Variablen deklaration zu der du noch hnzufügst:
WORD old_color = SetColor(FOREGROUND_GREEN|FOREGROUND_INTENSITY);

...

//Nun zum Einfärben. Vor jede Zeile, die du färben möchtest, musst du folgendes setzen:
SetColor(FOREGROUND_BLUE|FOREGROUND_INTENSITY);
/*Nun wird alles in Blau erscheinen, deshalb musst du entweder bei der nächsten Zeile eine neue Farbe setzen (Parameter: FOREGROUND_BLUE), oder nach der gefärbten Zeile auf die alte Farbe zurücksetzen, in dem du folgendes Hinzufügst:*/
SetColor(old_color);
}
05/29/2012 10:12 xNopex#3
Ich nehme an unter Windows?

>> [Only registered and activated users can see links. Click Here To Register...]
05/29/2012 10:41 Crystal-Craft#4
danke :P
05/30/2012 14:13 Tyrar#5
Quote:
Originally Posted by 2n0w View Post
Da kenne ich mich leider nicht aus, aber falls du den ganzen Text ändern willst kannst du das per system("color 0a"); machen.
no system ok?
05/30/2012 17:52 2n0w#6
Ok, hast recht ^^ Ist mir nur schnell mal eingefallen da ich das auswendig wusste, im Gegensatz zu SetConsoleTextAttribute.