1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
| #include <stdio.h>
#include <ncurses.h>
#include <stdlib.h>
int main ()
{
char chaine [255];
int maxX;
int maxY;
initscr (); // Initialisation de Curses
refresh (); // Mise à jour de l'affichage
getmaxyx(stdscr, maxY, maxX);
WINDOW * winGauche = newwin(maxY/2, maxX/2, 0, 0); // Création de la fenêtre win1
WINDOW * winDroite = newwin(maxY/2, maxX/2, 0, maxX/2);
WINDOW * winBas = newwin(maxY/2, maxX, maxY/2, 0);
WINDOW * derwinGauche = derwin(winGauche, maxY/2-2, maxX/2-2, 1, 1); // Création de la sous-fenêtre derwin1 de win1
WINDOW * derwinDroite = derwin(winDroite, maxY/2-2, maxX/2-2, 1, 1);
WINDOW * derwinBas = derwin(winBas, maxY/2-2, maxX-2, 1, 1);
scrollok(derwinGauche, TRUE);
scrollok(derwinDroite, TRUE);
scrollok(derwinBas, TRUE);
box(winGauche, ACS_VLINE, ACS_HLINE); // Dessine la boîte winGauche
box(winDroite, ACS_VLINE, ACS_HLINE);
box(winBas, ACS_VLINE, ACS_HLINE);
wrefresh (winGauche); // Affiche le fenêtre winGauche
wrefresh (winDroite);
wrefresh (winBas);
wrefresh (derwinGauche); // Affiche la sous-fenêtre derwinGauche
wrefresh (derwinDroite);
wrefresh (derwinBas);
do {
wgetstr(derwinBas, chaine); // Saisi de la chaine par l'utilisateur dans la sous-fenêtre du bas
waddstr(derwinGauche, chaine); // La chaine saisie précédemment est réécrite dans la sous-fenètre en haut à gauche
waddstr(derwinGauche, "\n");
wrefresh(derwinGauche);
waddstr(derwinDroite, chaine); // La chaine saisie précédemment est réécrite dans la sous-fenètre en haut à droite
waddstr(derwinDroite, "\n");
wrefresh(derwinDroite);
wrefresh (derwinBas);
} while (chaine[0] != '\0');
delwin(winGauche); //libère la mémoire de la fenêtre winGauche
delwin(winDroite);
delwin(winBas);
delwin(derwinGauche); //libère la mémoire de la sous-fenêtre derwinGauche
delwin(derwinDroite);
delwin(derwinBas);
endwin (); // Fin de Curses
return (0);
} |
Partager