PDA

View Full Version : Problema c++


Raistlin86
11-02-2004, 15:09
Sto svolgendo un programmino in c++ diciamo molto "casalingo". Ho creato un menu che si può scorrere con i tasti 2 e 8, e qui sorge il problema: non trovo un modo per renderlo utilizzabile con le classiche freccette direzionali, qualcuno ha idea di come fare?


Ora funziona un po cosi:

x=getch();
se x=2 fai questo
se x=8 fai questaltro
se x=5 esci

vorrei farlo funzionare cosi:

x=getch();
se x=freccia su fai questo
se x=freccia giu fai questaltro
se x=invio esci

fpucci
11-02-2004, 16:27
Quando programmavo in DOS, ricordo che quei tasti avevano un doppio codice:

Il primo codice serviva per capiure che era stato premuto uno di questi tasti speciali e quindi andava fatta una nuova getch() per estrarre il secondo codice (ovviamente senza premere altri tasti, perché il secondo codice è già presente nel buffer di tastiera).

Purtroppo adesso su due piedi non ricordo questi codici.
Ma se fai una ricerca su internet

qualcosa dovresti trovare...


Bye

P.S.
(Fai una getch() premendo il tasto freccia e fatti stampare il valore che essa tri ritorna.)
Se non ricordo male, il primo codice mi pare fosse quello di ESC=27

leomagic
12-02-2004, 15:17
le freccie fanno parte del carattere ascii esteso..
fai così..

int leggi_tasto()
{
int a;
a=getch();
if(a==0)
return 256+getch();
else
return a;
}

se il tasto ritornato è
331 sinistra
333 destra
328 alto
336 basso