KutaJack
Messages postés1Date d'inscriptionjeudi 19 novembre 2009StatutMembreDernière intervention22 avril 2010
-
22 avril 2010 à 13:37
cs_Chouchou182
Messages postés252Date d'inscriptionvendredi 13 juin 2003StatutMembreDernière intervention25 avril 2011
-
24 avril 2010 à 21:54
Bonjour
Je suis débutant en C++ et j'utilise getch() avec kbhit() suivit d'un switch pour pouvoir faire tel ou tel action en fonction de la touche appuyer :
int main(int argc, char *argv[])
{
char car;
do{
if(kbhit())
{
car = getch();
switch (car)
{
case HAUT : // action si appuie sur touche HAUT
break;
case BAS : // action si appuie sur touche BAS
break;
case ENTREE : //action si appuie sur touche ENTREE
break;
default : // action en cas d'autres touches d'appuyer
}
}
}while (car != 'e');
}
Le problème qui se pose est que si l'utilisateur appuie sur les touches BAS ou HAUT, l'action se passe normalement.
Mais pour la touche entrée, il faut appuyer deux fois pour que l'action se passe.
Auriez vous une solution pour pouvoir faire une action au premier appuie de la touche entrée?
cs_Chouchou182
Messages postés252Date d'inscriptionvendredi 13 juin 2003StatutMembreDernière intervention25 avril 20111 24 avril 2010 à 21:54
Salut,
Dans ton «default», affiche l'entier qui est lu:
printf("%d ", car);
Ainsi tu sauras ce qui se passe lorsque tu appuies (la première fois) sur entrée.