begin process at 2012 05 27 18:39:23
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Applications Linux

 > MENU

MENU


 Description

c est un menu optimisé pour un ecran de 80 colonnes par 24 lignes ( type terminal vt100/vt102 ) tournant sous linux

Source

  • #include <stdlib.h>
  • #include <iostream>
  • #include <unistd.h>
  • #include <string.h>
  • using namespace std;
  • int main(void)
  • {
  • // DECLARATIONS:
  • // x= position sur l ecran sur l axe des abscisses
  • // y= position sur l ecran sur l axe des ordonnées
  • // chaine= le nombre de titres du menu
  • // choix= le choix qu effectue l utilisateur à la suite de l affichage du menu
  • // menu= tableau contenant les titres du menu
  • int x,y,index,chaine,choix;
  • char menu[9][40]={"1_Acquisition","2_Déplacement robot","3_Commande porte","4_Commande voyants","5_Lecture carte","6_Rotation zoom","7_Tester reseau","Entrez votre choix: ",""};//on declare le tableau contenant le menu
  • do
  • {
  • index=0;
  • chaine=0;
  • cout<<"\x1b[2J";
  • while(strcmp(menu[index],"")!=0) //tant que les 2 chaines sont differentes
  • {
  • chaine++;
  • index++;
  • }
  • y=((24-(chaine*2))/2);
  • index=0;
  • while(strcmp(menu[index],"")!=0) //tant que les 2 chaines sont differentes
  • {
  • x=40-(strlen(menu[index])/2);
  • cout<<"\x1b["<< y <<';'<< x <<'H';
  • cout << menu[index];
  • y=y+2;
  • index++;
  • }
  • y=y-2;
  • cin>>choix;
  • cout<<"\x1b[2J"; //on efface l ecran
  • y=11;
  • x=25;
  • if((choix>chaine)||(choix<1))
  • {
  • cout<<"\x1b["<<y<<';'<<x<<'H'; //on deplace en x;y
  • cout<<"Vous avez choisi un mauvais menu..."<<endl;
  • sleep(3); //on attend 3 secondes
  • }
  • else
  • {
  • x=10;
  • cout<<"\x1b["<<y<<';'<<x<<'H'; //on deplace en x;y
  • cout<<"Vous avez choisi le menu: "<<menu[choix-1]<<endl;
  • }
  • }while((choix<1)||(choix>chaine)); //si le choix est mauvais on refait la boucle
  • exit(0);
  • }
#include <stdlib.h>
#include <iostream>
#include <unistd.h>
#include <string.h>
using namespace std;

int main(void)
{
  //       DECLARATIONS:
  //  x= position sur l ecran sur l axe des abscisses
  //  y= position sur l ecran sur l axe des ordonnées
  //  chaine= le nombre de titres du menu
  //  choix= le choix qu effectue l utilisateur à la suite de l affichage du menu
  //  menu= tableau contenant les titres du menu
  int x,y,index,chaine,choix;
  char menu[9][40]={"1_Acquisition","2_Déplacement robot","3_Commande porte","4_Commande voyants","5_Lecture carte","6_Rotation zoom","7_Tester reseau","Entrez votre choix: ",""};//on declare le tableau contenant le menu
  
  


  do
  {
  index=0;
  chaine=0;                         
cout<<"\x1b[2J";  
 while(strcmp(menu[index],"")!=0)          //tant que les 2 chaines sont differentes
    {
      chaine++;
      index++;
    }
 

y=((24-(chaine*2))/2);
  index=0;
  while(strcmp(menu[index],"")!=0)         //tant que les 2 chaines sont differentes
    {
      x=40-(strlen(menu[index])/2);
      cout<<"\x1b["<< y <<';'<< x <<'H';
      cout << menu[index];
      y=y+2;
      index++;
    }
  y=y-2;
  cin>>choix;
  cout<<"\x1b[2J";                     //on efface l ecran
  y=11;
  x=25;
  if((choix>chaine)||(choix<1))
    {
      cout<<"\x1b["<<y<<';'<<x<<'H';   //on deplace en x;y
      cout<<"Vous avez choisi un mauvais menu..."<<endl;
      sleep(3);                        //on attend 3 secondes 
    }
  else
    {
      x=10;
      cout<<"\x1b["<<y<<';'<<x<<'H';   //on deplace en x;y
      cout<<"Vous avez choisi le menu: "<<menu[choix-1]<<endl;
    }
  }while((choix<1)||(choix>chaine));  //si le choix est mauvais on refait la boucle
  exit(0);
}



 Sources du même auteur

CLASSE FILE UTILISANT UN TABLEAU
CLASSE PILE UTILISANT UN TABLEAU
VOIE PARALLELE COUPLEUR MC 68230 IMPRIMANTE SOUS LINUX
CALCUL PUISSANCE PAR FONCTION RECURSIVE
CALCUL FACTORIEL PAR FONCTION RECURSIVE

 Sources de la même categorie

Source avec Zip TRAITEMENT D'IMAGE PGM par Jios
Source avec une capture COLORIMÈTRE NUMÉRIQUE LINUX par valchek
Source avec Zip TRAITEMENTS D'IMAGES AU FORMAT PGM AVEC LES ALGORITHMES DE C... par lemout
Source avec Zip ALGORITHME ACO INTERFACE GTK par RyBeN
Source avec Zip COMPRESSER SES SAUVEGARDES SMSBACKUPRESTORE (ANDROID) EN C A... par ThalLab

Commentaires et avis

Commentaire de LordBob le 09/10/2003 21:09:46

tu devrait mettre une petit capture de ton menu, histoire que l'on puisse voir a quoi il ressemble...

Commentaire de morgandetoi06 le 09/10/2003 21:43:11

ben en fait c un menu classique sauf qu il centre automatiquement les titres qui sont stockées dans le tableau en fonction de leur taille.
pour la capture d ecran je ne croit pas que ce soit possible à partir de la console de linux ?

Commentaire de infolinou33 le 08/08/2010 22:36:36

Bonjour,
Est-ce-que vous pouvez nous dire que représentent les variables cout, cin et endl
car elles ne sont pas déclarées dans votre programme?

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,328 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales