Verschiedene Farben gleichzeitig



  • Guten Tag,
    ist es möglich verschiede Farben gleichzeitig im DOS anzeigen zu lassen, wie z.b.

    #include <stdio.h>
    
    main(){
       //Funktion für die Farbe
       printf("Dieser Satz ist rot");
       //Wieder die Funktion
       printf("\nDieser Satz ist blau...");
       //etc...
    }
    

    Kann mir einer sagen, wie ich das realisieren kann?

    Bedanke mich für jede Antwort



  • Falls du statt DOS die Windows Konsole meinst, schau dir mal die Improved Console an.



  • kansu winapi ook direct benützern, guggsu hia:

    #include <windows.h>
    #include <stdio.h>
    
    HANDLE hcon;
    #define BASIC_COLOR FOREGROUND_INTENSITY|BACKGROUND_INTENSITY|BACKGROUND_BLUE|BACKGROUND_GREEN|BACKGROUND_RED
    
    int main ()
    {
    	HANDLE hcon = GetStdHandle(STD_OUTPUT_HANDLE);
    
    	SetConsoleTextAttribute (hcon,FOREGROUND_GREEN|BASIC_COLOR);
    	puts("Gruen und");
    	SetConsoleTextAttribute (hcon,FOREGROUND_BLUE|BASIC_COLOR);
    	puts("Blau");
    	SetConsoleTextAttribute (hcon,FOREGROUND_BLUE|FOREGROUND_GREEN|BASIC_COLOR);
    	puts("schmueckt die Sau.");
    
    	return 0;
    }
    


  • Ich rúfe dieses Thema nochmal ins leben, da ich das gleiche Problem habe.
    Bei dem Code hier

    #include <windows.h>
    #include <stdio.h>
    
    HANDLE hcon;
    #define BASIC_COLOR FOREGROUND_INTENSITY|BACKGROUND_INTENSITY|BACKGROUND_BLUE|BACKGROUND_GREEN|BACKGROUND_RED
    
    int main ()
    {
        HANDLE hcon = GetStdHandle(STD_OUTPUT_HANDLE);
    
        SetConsoleTextAttribute (hcon,FOREGROUND_GREEN|BASIC_COLOR);
        puts("Gruen und");
        SetConsoleTextAttribute (hcon,FOREGROUND_BLUE|BASIC_COLOR);
        puts("Blau");
        SetConsoleTextAttribute (hcon,FOREGROUND_BLUE|FOREGROUND_GREEN|BASIC_COLOR);
        puts("schmueckt die Sau.");
    
        return 0;
    }
    

    bleibt jedoch der Hintergrund der Schrift immer weiß. Kann man den auch irgendwie verändern?

    Gruß Dr. Evil



  • Dr. Evil schrieb:

    bleibt jedoch der Hintergrund der Schrift immer weiß. Kann man den auch irgendwie verändern?

    Ja, änder mal den Wert von BASIC_COLOR, speziell die BACKGROUND_XXX - Zusammensetzung ...



  • OK es klappt, jedoch kennt er "BACKGROUND_BLACK" nicht und manche anderen Farben auch nicht. Wie bekomme ich das noch hin. Bin noch ein blutiger Anfänger 😃



  • OK. Habs rausgefunden!
    Ich werde es reinschreiben falls andere das selbe Problem haben

    #include <stdio.h>
    #include <windows.h>
    
    HANDLE hcon;
    
    int main(){
    
        HANDLE hcon = GetStdHandle(STD_OUTPUT_HANDLE);
    
        SetConsoleTextAttribute(hcon,0|10);
        printf("Gruen und ");
        SetConsoleTextAttribute(hcon,0|9);
        printf("Blau ");
        SetConsoleTextAttribute(hcon,9|10);
        printf("schmueckt die Sau.");
    }
    

    Infos zu Farben einfach "help color" in der CMD eingeben!



  • Ich find mit escape sequenzen geht es einfacher als mit so einer funktion... macht es zwar nicht leslicher aber man kann so auch easy einzelne buchstaben mit farbe belegen!



  • script0r schrieb:

    Ich find mit escape sequenzen geht es einfacher als mit so einer funktion... macht es zwar nicht leslicher aber man kann so auch easy einzelne buchstaben mit farbe belegen!

    unter windows kannste die dinger voll easy vergessen ey.


Anmelden zum Antworten