2009-01-02 8 views

Odpowiedz

11

Terminal konwertuje klawisz sterujący w połączeniu z klawiszem literowym na normalny kod ASCII. Można to odczytać z funkcji getch(), jak w przypadku każdego innego naciśnięcia klawisza.

CTRL-A: getch() returns 1 
CTRL-B: getch() returns 2 
... 
CTRL-Z: getch() returns 26 

Ponadto, funkcja keypad() musi być wywołana włączyć inne specjalne przyciski funkcyjne (np lewej strzałki F1, w domu, itp).

Nie sądzę, że istnieje przenośny sposób odbierania meta-kluczy (na przykład ALT-H) przez terminal. Niektórzy wysyłają polecenie escape (0x1B), a następnie zmodyfikowany klucz, podczas gdy inni ustawiają high-bit i wysyłają tylko jeden bajt.

Powiązane problemy