Pfeiltasten-Escapes in Windows?

2 Antworten

Ich habe es jetzt so gelöst, dass ich das eingelesene Zeichen mit Zahlenwert des Ó-Zeichens vergleiche und falls es das ist, das nächste Zeichen als Pfeiltaste einlese:

char c;
while(1){
  while(!kbhit());
  if((c = getch()) == 224){
    c = getch();
    printf("Pfeiltaste Code: %c", c);
}

Falls jemand eine bessere Idee hat (abgesehen davon auf Linux zu programmieren ;-)), bitte einfach schreiben.

"C" weiß ich nicht - in Delphi und Turbopascal musste man bei Sondertasten das Ereignis "Keypressed" 2x hintereinander abfangen.....

Woher ich das weiß:eigene Erfahrung
Win7User 
Fragesteller
 21.11.2019, 19:13

Events gibt es in C nicht :)

Aber unter Linux muss man auch mehrmals hintereinander den Buffer auslesen:
1. Escape-Zeichen lesen (zeigt, dass es kein Buchstabe ist)
2. [-Zeichen aus dem Buffer löschen
3. Pfeiltaste auslesen

1