Couleur dans console

Signaler
Messages postés
255
Date d'inscription
samedi 20 avril 2002
Statut
Membre
Dernière intervention
16 janvier 2007
-
Messages postés
59
Date d'inscription
samedi 11 janvier 2003
Statut
Membre
Dernière intervention
15 mai 2006
-
Peut-on écrire en couleur dans la console Win avec les instruction printf ou cout ou est-on 'tristement' limité à ce blanc sur noir? Merci ++

4 réponses

Messages postés
2865
Date d'inscription
samedi 2 novembre 2002
Statut
Membre
Dernière intervention
11 mai 2009
10
on est pas limité, tu peux ecrire de n'importe qu'elle couleur... cherche sur le site y a une source (qui est en realité un header graphique), qui peut permettre de changer la couleur d'ecriture... recherche dans les sources !!!
Bob...

"La chance accorde ses faveur aux esprits avertis..."
Messages postés
3011
Date d'inscription
jeudi 26 septembre 2002
Statut
Membre
Dernière intervention
27 novembre 2004
8
econio ou sconio (les 2 sur cppfrance) en win32, mais sache qu'a partir de la tu quitte le monde du standard
Messages postés
59
Date d'inscription
samedi 11 janvier 2003
Statut
Membre
Dernière intervention
15 mai 2006

Si il s'agit bien du mode console; tu peux coder ;

// Définition du handle du buffer de la console écran et de la console clavier.

const HANDLE MaConsoleEcran = GetStdHandle(STD_OUTPUT_HANDLE);

// Définitions des couleurs :

const int NOIR = 0;
const int GRIS = FOREGROUND_INTENSITY;
const int ECRU = FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_RED;
const int BLANC = FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_INTENSITY;
const int BLEU = FOREGROUND_BLUE ;
const int BLEU_VIF = FOREGROUND_BLUE | FOREGROUND_INTENSITY;
const int ROUGE = FOREGROUND_RED;
const int ORANGE = FOREGROUND_RED | FOREGROUND_INTENSITY;
const int VERT = FOREGROUND_GREEN ;
const int VERT_VIF = FOREGROUND_GREEN | FOREGROUND_INTENSITY;
const int MARRON = FOREGROUND_RED | FOREGROUND_GREEN;
const int JAUNE = FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY;
const int VIOLET = FOREGROUND_RED |FOREGROUND_BLUE;
const int VIOLET_VIF = FOREGROUND_RED |FOREGROUND_BLUE | FOREGROUND_INTENSITY;
const int CYAN = FOREGROUND_BLUE | FOREGROUND_GREEN;
const int CYAN_VIF = FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_INTENSITY;

int fond = NOIR; // Les couleurs par défaut
int texte = BLANC;

//PROTOTYPES des fonctions :

//------------------------------------------------------------------------------------------
// Fonction void CouleurTexte Mets en couleur le texte affiché // // selon les arguments fournis
//------------------------------------------------------------------------------------------
void CouleurTexte( int CouleurTexte )
{
texte = CouleurTexte;
SetConsoleTextAttribute (MaConsoleEcran, texte | fond);
} //----------------------------------------------------------------------------------------

//------------------------------------------------------------------------------------------
// Fonction void CouleurFond Mets en couleur le fond // // selon les arguments fournis
//------------------------------------------------------------------------------------------
void CouleurFond( int CouleurFond )
{
fond = CouleurFond * 0x0010 ;
// ou fond = CouleurFond * 16; (cette solution est la moins rapide)
// ou fond = CouleurFond << 4; (cette solution est la plus rapide ; vous pourrez souvent la
// trouver dans les librairies conio.h)

SetConsoleTextAttribute (MaConsoleEcran, texte | fond);
}//-----------------------------------------------------------------------------------------

//------------------------------------------------------------------------------------------
// Fonction void CouleurFondTexte Mets en couleur le texte affiché et le fond // selon les arguments fournis
//------------------------------------------------------------------------------------------
void CouleurFondTexte( int CouleurFond, int CouleurText )
{
fond = CouleurFond * 0x0010 ;
texte = CouleurText;

SetConsoleTextAttribute (MaConsoleEcran, texte | fond );

}//-----------------------------------------------------------------------------------------

Par exemple l'instruction : CouleurFondTexte(BLANC,CYAN); dans main() provoquera une ecriture
cyan sur un fond blanc.

Comme cela ; il n'est pas necessaire d'utiliser conio.h qui est different d'un compilateur a l'autre.

Bon courage
Messages postés
59
Date d'inscription
samedi 11 janvier 2003
Statut
Membre
Dernière intervention
15 mai 2006

J' ai oublie de preciser ; il faut dans ce cas ajouter l'include windows.h