IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Touches d'actions


Sujet :

C

  1. #1
    Nouveau membre du Club
    Inscrit en
    Septembre 2005
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 30
    Points : 28
    Points
    28
    Par défaut Touches d'actions
    Bonjour,

    Je recherche le moyen d'attribuer une actions à une touche du clavier.
    Par exemple si j'ai un programme en cours si j'appuis sur le touche F9 par exemple le programme quitte directement et la fenêtre de dos se ferme.

    Si vous avez des propositions merci de me les faire parvenir.

    Merci

    @+ Jérémy

  2. #2
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut Re: Touches d'actions
    Citation Envoyé par jejeb
    Je recherche le moyen d'attribuer une actions à une touche du clavier.
    Par exemple si j'ai un programme en cours si j'appuis sur le touche F9 par exemple le programme quitte directement et la fenêtre de dos se ferme.

    Si vous avez des propositions merci de me les faire parvenir.
    Ca dépend du système.
    Pas de Wi-Fi à la maison : CPL

  3. #3
    Membre confirmé Avatar de nemo69500
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    639
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 639
    Points : 519
    Points
    519
    *************##--##***************
    www.ptichoupi.fr



    Pensez au
    De tmps en tps du repos, ca fais du bien!

    ************//////\\\\\\**************

  4. #4
    Nouveau membre du Club
    Inscrit en
    Septembre 2005
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 30
    Points : 28
    Points
    28
    Par défaut
    Comment ça, ça dépend du système.
    Je suis débutant et je ne comprend pas bien.
    Mon programme est un programme simple de vote et je veux que pendant le vote si j'appuie sur la touche F10 on passe directement au dépouillement et j'appuie sur F9 le programme quitte.

    Voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    #include <stdio.h>
    #include <stdlib.h>
    #include <conio.c>
    #define C 100
    void depouillement();
    float oui,non,nul;
    int main(void)
    {
         int i,k,j=0,nbre,quitter;
     
         char choix;
         bool resultat;
         oui=0;
         non=0;
         nul=0;
         unsigned long int tab[C]={0};//initialise tout le tableau
         unsigned long int num; // c'est un nombre beaucoup plus grand car tu n'as pas besoin des nombres négatifs
     
         //Initialisation du tableau//
     
         for(j=0;j<=C;j++)
         {
          tab[j]=0;
         }
     
     
         printf("Combien y a t-il de votants ? \n");
         scanf("%d",&nbre);
     
         for (i=0;i<nbre;i++)
     
         {
             clrscr ();
             printf ("Quel est le numero du votant ? \n\n");
             scanf ("%d",&num);
             clrscr();
             resultat=false;
             j=0;
             //test si le num est présent sinon, on teste le N° suivant
             while(j<=i && resultat==false)// condition pour rester dans la boucle
             {
                   //attention il faut toujours comparer 2 var de même type
                   if (num==tab[j])
                   {
                      resultat=true;
                   }
                   else
                   {
                       j++;
                   }
             }
             //gestion du resultat
             if (resultat==true)      
             {
                   printf("Vous avez deja vote\n\n");
                   i--;//attention si la personne a déjà voté, il ne faut pas considérer que c'est un nouveau votant
                   system("PAUSE");
             }
             else
             {  tab[i]=num; 
                printf ("Quel est le choix du votant ? Ecrit o=oui  ou  n=non ou u=nul\n\n");
                scanf ("%*c%c",&choix);
     
                 //il ne faut pas oublier le cas ou la personne selectionne une autre lettre : c'est donc un vote nul
                 switch (choix)
                 {
                  case 'o': oui++;break;
                  case 'O': oui++;break;
                  case 'n': non++;break;
                  case 'N': non++;break;
                  default:  nul++;break;
                 }
             }
           }
         oui=oui/nbre*100;
         non=non/nbre*100;
         nul=nul/nbre*100;
     
         depouillement();
     
         for (j=0;j<i;j++)
     
             {
             printf("%d\n",tab[j]);
             }
     
         system("PAUSE");
     
        return 0;
     
    }
     
     
     // Depouillement//
     
    void depouillement()
     
    {
     
     printf("Les Resultats sont  OUI : %f  NON : %f  NUL :%f %\n",oui,non,nul);
     
    }
    Merci

    @+ Jérémy

  5. #5
    Membre expérimenté
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Points : 1 727
    Points
    1 727
    Par défaut
    Il faudrait utiliser getch() au lieu de scanf, mais getch est pas standard

    Utilise fgetc(stdin) à la place, l'inconvenient c'est qu'il faut appuyer sur entrée pour "valider" le caractere entré et les touches de controle comme Fx ne sont pas vraiment considérés comme des caracteres
    Il faudrait alors mettre plutot un choix 'Q' pour quitter

    Sinon ton #include <conio.c> m'horripile

  6. #6
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par jejeb
    Comment ça, ça dépend du système.
    http://emmanuel-delahaye.developpez....s.htm#standard
    Voici le code :
    N'existe pas sous Linux. Tu es donc sous DOS ou Windows.

    Quand à conio, la version originale était fournie par les compilateurs Borland sous DOS. Elle a été portée sous Windows par les gens de Dev-C++ et c'est maintenant un devpak que l'on peut installer dans Code::Blocks.

    Inclure <conio2.h>
    Pas de Wi-Fi à la maison : CPL

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. If touche=presser action
    Par forsites dans le forum VBScript
    Réponses: 3
    Dernier message: 21/01/2010, 17h02
  2. action sur les touches
    Par max---- dans le forum Allegro
    Réponses: 6
    Dernier message: 10/04/2006, 23h42
  3. Controler les actions de la touche tabulation
    Par lipao17 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 16/12/2005, 15h52
  4. Réponses: 11
    Dernier message: 05/12/2005, 10h08
  5. [JTextField] Déclencher une action avec la touche ENTER
    Par tchoukapi dans le forum Composants
    Réponses: 10
    Dernier message: 19/09/2005, 14h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo