Valeur des flèches du clavier [C]

seo610 Messages postés 596 Date d'inscription   Statut Membre Dernière intervention   -  
fiddy Messages postés 11069 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
A voir également:

4 réponses

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   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
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
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
seo610 Messages postés 596 Date d'inscription   Statut Membre Dernière intervention   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
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
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