Valeur des flèches du clavier [C]

seo610 Messages postés 705 Statut Membre -  
fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Quel sont les valeurs des flèches du clavier retourner par les fontions getch() ou getchar() ?

merci

4 réponses

  1. KX Messages postés 19031 Statut Modérateur 3 020
     
    Je ne sais pas trop comment les récupérer autrement mais avec glutSpecialFunc, les valeurs des flèches sont 100 (gauche), 101 (haut), 102 (droite), et 103 (bas), mais ça ne correspond à aucun caractère ASCII, et il est plutôt conseillé d'utiliser les constantes prédéfinies (GLUT_KEY_LEFT, GLUT_KEY_UP, GLUT_KEY_RIGHT, GLUT_KEY_DOWN)
    0
  2. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    Bonjour,

    Les flèches font partie des touches étendues.
    Il faut faire appel à la fonction de lecture deux fois.
    La première fois, la fonction (getch() par exemple sous windows) te renverra 0 ou 224 dans un premier temps. Dans un second temps, cela te renverra le code de la touche étendue.
    Le mieux pour avoir un minimum de portabilité est d'utiliser la bibliothèque PDCurses : http://pdcurses.sourceforge.net/doc/index.html
    0
  3. seo610 Messages postés 705 Statut Membre 102
     
    j'ai testé la valeur renvoyé par getch() et voici le resultat :

    HAUT = 224 72
    BAS = 224 80
    GAUCHE = 224 75
    DROITE = 224 77

    il y a deux valeurs.
    comment les utiliser?

    merci
    0
  4. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    La premiere est celle dont je te parlais (0 ou 224 suivant lOS). Elle tindique que c'est une touche etendue. L'autre valeur te donne simplement le code de la touche. A toi de les retenir pour t'en servir par la suite.
    0