Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 17/10/2008, à 18:25

makx

menu en C dans la console

bonjour,
j'aimerai creer un menu en C, dans lequel on utilise les fleches haut et bas pour se déplacer.
un genre a ça:

#include<stdio.h>
#include<conio.h>
#define KEY_UP 72
#define KEY_DOWN 80
void main()
{ int x,i,col=10,lin=5;
  char tab[5][30]={"option1","option2","option3","option4","option5"};

  clrscr();
  gotoxy(20,15);
  for(i=0;i<5;i++)
    {gotoxy(col,lin+i);printf("%s",tab[i]);
    }
  i=0;

  do
  {gotoxy(col,lin+i);
   highvideo();
    cprintf("%s",tab[i]);
    normvideo();
    x=getch();
    if(x==0)
    {x=getch();
      if(x==KEY_DOWN)
      { gotoxy(col,lin+i);
        cprintf("%s", tab[i]);
        i++;
        if(i==5)
          i=0;

      }
      if(x==KEY_UP)
      { gotoxy(col,lin+i);
        cprintf("%s",tab[i]);
        i--;
        if(i==-1) i=4;
      }
     }
  }
  while(x!=13);
  gotoxy(col,20);
  printf("\nvous avez choisi l'option %s",tab[i]);
 getch();
}

a titre d'exemple.
je compile avec gcc ( gcc -lncurses main.c -o main.x )
mais seul le getch(); me pose problemes (c'est bien connu, je sais) mais avec la librairie curses,
j'ai des tas de problèmes à l'execution.
Est ce que quelqu'un peut m'expliquer comment l'utiliser convenablement?
merci

Dernière modification par makx (Le 17/10/2008, à 18:37)


Fedora <3

Hors ligne

#2 Le 17/10/2008, à 19:11

nicolas.sitbon

Re : menu en C dans la console

void main () n'existe pas en C standard, ensuite si tu veux une gestion complète de la console, oriente toi plutôt vers pdcurses (http://pdcurses.sourceforge.net/) qui non seulement est portable mais en plus standard POSIX (SUSv3).
Cordialement.

Hors ligne

#3 Le 17/10/2008, à 19:25

makx

Re : menu en C dans la console

oui, le programme la n'est pas de moi, c'est juste un exemple pris d'un site et qui fonctionne sous windows.
je vais voir ce que tu m'as donné, je te tiens au courant.
merci


Fedora <3

Hors ligne

#4 Le 17/10/2008, à 20:25

bobj

Re : menu en C dans la console

salut,

http://forum.ubuntu-fr.org/viewtopic.php?id=115200
http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/