Table des matières

, , ,

Modification des attributs

Les attributs ncurses permettent de changer la mise en forme/couleur du texte le terminal.

Fichier source

main.c
#include <stdlib.h>
#include <ncurses.h>
#include <string.h>
 
 
int main(int argc, char* argv[])
{
        char msg[] = "Bonjour les Attributs!";
        char msg_quit[] = "Presser une touche pour quitter...";
 
        int mr, mc = 0; // mr pour max_row et mc pour max_column
 
        initscr();
        start_color();
        init_pair(1, COLOR_CYAN, COLOR_BLACK);
 
        getmaxyx(stdscr, mr, mc);
 
        //active plusieurs attributs simultanément
        attron(A_BOLD|A_UNDERLINE);
        //affichage du message
        mvprintw(mr/2, (mc - strlen(msg))/2, "%s", msg);
        //desactive les attributs
        attroff(A_BOLD|A_UNDERLINE);
 
        //affiche un message en bas de l'ecran
        move(mr -1, 0);
        addstr(msg_quit);
 
        //modification des attributs a posteriori
        mvchgat(mr -1, 0, -1, A_BLINK, 1, NULL);
        /* les 2 premier arguments déplacent le curseur
           le troisième définit la limite de la modification -1 pour modifier jusq'a la fin de ligne.
           quatrieme specifie le ou les attributs
           cinquieme l'index de couleur
           sixieme est non utilisé, positionné a NULL*/
 
        refresh();
        getch();
        endwin();
        return EXIT_SUCCESS;
}

Compilation

$ gcc -Wall main.c -lncurses -o test-ncurses

Exécution

$ ./test-ncurses