(Courriels de diversion: <cessibles@engraisses-provisionnes.com> <affaisserent@empaquetiez-barricada.com> <trepanent@reglementaire-langee.com> <communierez@manipulez-interdirais.com> <trafiquera@galvanisaient-trublions.com> <entrouvririons@transcodees-edifie.com> <encombres@clarte-tenaillee.com> <gendarmions@enterra-enchaînerai.com> <valeur@obligerai-developperent.com> <musculations@prorogeras-mecaniserons.com> )
Le vendredi 30 mai 2003, Mougrelet Jean-Marc a écrit... bonjour, > Ca ne fonctionne pas vraiment! c'est vrai, quoique... Ci joint un petit bout de code, mais je ne suis pas spécialiste ncursiste et d'autres pourront améliorer et critiquer (c'est même souhaité). Ça se compile par: gcc message.c -o message -lcurses et tu peux le lancer dans un script avec: rxvt -name message -e /là/où/j'ai/mis/message On aurait pu faire en gtk mais en console c'est moyen ! /* message.c */ #include <stdio.h> #include <string.h> #include <stdlib.h> #include <curses.h> int main (int argc, char *argv[]) { char *msg = "Quelque chose a foiré petit scarabée"; int l_boite, h_boite, start_x, start_y, end_x, end_y; int c; int i, j; initscr (); noecho (); cbreak (); curs_set (0); keypad (stdscr, TRUE); if (has_colors ()) { start_color (); init_pair (1, COLOR_BLACK, COLOR_RED); init_pair (2, COLOR_WHITE, COLOR_RED); } l_boite = strlen (msg) + 2; h_boite = 5; if (COLS < l_boite) { fprintf (stderr, "Fenêtre pas assez large\n"); exit (EXIT_FAILURE); } if (LINES < 5) { fprintf (stderr, "Fenêtre pas assez haute\n"); exit (EXIT_FAILURE); } start_x = (COLS - l_boite) / 2; end_x = start_x + l_boite; start_y = (LINES - h_boite) / 2; end_y = start_y + h_boite; attron (COLOR_PAIR (1)|A_BOLD); for (j = start_y; j < end_y; j++) for (i = start_x; i < end_x; i++) mvaddch (j, i, ' '); attroff (COLOR_PAIR (3)); attron (COLOR_PAIR (2)); mvprintw (start_y + h_boite / 2, start_x + 1, "%s", msg); attroff (COLOR_PAIR (2)); mvprintw (LINES - 1, 1, "F10 pour quitter"); refresh (); while ((c = getch ()) != KEY_F(10)) ; endwin (); return (EXIT_SUCCESS); } -- jean-michel -------------------------------------------------------------------- Les listes de diffusion occultes: <URL:http://www.CULTe.org/listes/>