IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Colorier le texte du printf


Sujet :

C

  1. #1
    Membre du Club
    Inscrit en
    Novembre 2010
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 221
    Points : 61
    Points
    61
    Par défaut Colorier le texte du printf
    Salut !

    Je cherche à colorer du texte en C. J'ai trouvé cette méthode mais je sais pas comment l'appeler dans le main. Si vous pouvez m'aider, svp…

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     void Color(int couleurDuTexte,int couleurDeFond) // fonction d'affichage de couleurs
    {
            HANDLE H = GetStdHandle(STD_OUTPUT_HANDLE);
            SetConsoleTextAttribute(H,couleurDeFond*16+couleurDuTexte);
    }
        /*
            0 : Noir
            1 : Bleu foncé
            2 : Vert foncé
            3 : Turquoise
            4 : Rouge foncé
            5 : Violet
            6 : Vert caca d'oie
            7 : Gris clair
            8 : Gris foncé
            9 : Bleu fluo
            10 : Vert fluo
            11 : Turquoise
            12 : Rouge fluo
            13 : Violet 2
            14 : Jaune
            15 : Blanc
        */

  2. #2
    Membre émérite
    Avatar de imperio
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    852
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2010
    Messages : 852
    Points : 2 298
    Points
    2 298
    Par défaut
    Ca devrait t'aider. Cependant ce genre de réponse peuvent facilement être trouvée sur le net. Une petite recherche sur google ne t'aurais pas tué. Sinon un petit exemple par-rapport à ta demande :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    HANDLE  hConsole;
        int k;
     
      hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
     
      for(k = 1; k < 255; k++)
      {
        SetConsoleTextAttribute(hConsole, k);
        printf("%d %s\n", k, "I want to be nice today!");
      }

  3. #3
    Membre expert
    Avatar de Metalman
    Homme Profil pro
    Enseignant-Chercheur
    Inscrit en
    Juin 2005
    Messages
    1 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Enseignant-Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 049
    Points : 3 532
    Points
    3 532
    Par défaut
    Et attention... la couleur dépend du terminal dans lequel cela sera affiché...

    Le type HANDLE, et le lien disent que cela concerne Windows.

    Sur des consoles Linux il faut voir les codes couleurs associés aux terminaux (une simple recherche pour écrire des couleurs dans un shell te permettra de trouver ces codes)
    --
    Metalman !

    Attendez 5 mins après mes posts... les EDIT vont vite avec moi...
    Les flags de la vie : gcc -W -Wall -Werror -ansi -pedantic mes_sources.c
    gcc -Wall -Wextra -Werror -std=c99 -pedantic mes_sources.c
    (ANSI retire quelques fonctions comme strdup...)
    L'outil de la vie : valgrind --show-reachable=yes --leak-check=full ./mon_programme
    Et s'assurer que la logique est bonne "aussi" !

    Ma page Developpez.net

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2012
    Messages : 5
    Points : 8
    Points
    8
    Par défaut
    Comme l'on dit mes deux camarades du dessus Handle c'est pour Windows sous Linux tu utilises les codes couleurs voici un exemple que j'avais fait il y a longtemps :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    #ifndef COULEURS
    #define COULEURS
     
    #include <stdlib.h>
    #include <stdio.h>
     
    #define clrscr() printf("\033[H\033[2J")
    #define color(param) printf("\033[%sm",param)
    /* => exemple de fonctionnement:  couleur("34");  printf("test");  couleur("0");
     								=>texte en bleu. 	 			 =>réinitialise le système de couleur.
     
     Voici la liste des paramètres pour changer la couleur. En face de chaque paramètre se trouve la couleur correspondante.
    0 == réinitialisation.
     
    Paramètre  Couleur
    30 Noir |31 Rouge | 32 Vert | 33 Jaune | 34 Bleu| 35 Magenta | 36 Cyan | 37 Blanc
     
    "1" active la haute intensité des caractères.
    */
    #endif
    Et pour l'utiliser tout simplement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    	clrscr(); // nettoyage de l'ecran grâce à la macro placée dans color.h
        color("36;1"); // On colore en Cyan et en pseudo gras
    	printf("\n\t\t\t.:: Gestion de prêts de livres ::.\n\n");
    	color("0"); // On remet en blanc
    Voila la prochaine fois, google ;) ! ++

Discussions similaires

  1. Colorier le texte contenu dans std::cerr
    Par darkman19320 dans le forum C++
    Réponses: 2
    Dernier message: 11/05/2012, 15h19
  2. [WD-2003] Colorier un texte entre 2 caractères
    Par iveli dans le forum VBA Word
    Réponses: 5
    Dernier message: 01/03/2011, 23h12
  3. [Plugin]Colorier le texte
    Par lordashram dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 06/03/2008, 18h05
  4. Comment colorier le texte d'un contrôle ou son fond?
    Par N3odyme dans le forum Windows
    Réponses: 2
    Dernier message: 15/10/2006, 16h50
  5. Réponses: 4
    Dernier message: 12/09/2006, 12h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo