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
|
c = -1; //pas de caractere
if(kbhit())//si lutilisateur a appuyer sur une touche
{
c = getch();
//il faut lire un premier caractère du buffer clavier, détecter qu'il s'agit
//d'un code de touche étendue(F1 à F12 et les touches fléchées),et relire un
//second caractère pour identifier la touche.
if (!c) // touche étendue ?
{
c = getch();
// c contient maintenant le code de la touche étendue
switch(c) // ... et effectuer le traitement
{
case 0x4B: // Fleche Gauche (0x4B)
printf("gauche");// Traîtement
break ;
case 0x4D: // Fleche Droite (0x4D)
// Traîtement
printf("droit");
break ;
case 0x48: // Fleche Haute (0x48)
// Traîtement
printf("haut");
break ;
case 0x50: // Fleche Basse (0x50)
// Traîtement
printf("bas");
break ;
}
}
else //si c'est une touche normale
{
if (c == ESC) /* test de sortie */
break;
switch(c)
{
case '1' :
// Traîtement
break ;
case '2' :
// Traîtement
break ;
case '3' :
// Traîtement
break ;
}
}
} |