Programare tastatură

Caracteristici suplimentare Comenzile de la tastatură sunt puse în aplicare prin două funcții: KeyPressed și ReadKey.

în timp ce KeyPressed do

Atunci când se utilizează ReadKey procedură, să fie conștienți de faptul că, în tamponul de tastatură plasat așa numitele taste de cod îmbunătățite. Dacă apăsați orice tastă alfanumerică, cod avansat coincide cu caracterul corespunzător ASCII-cod. De exemplu, dacă o tastă este apăsată cu litera latină "o" (cu litere mici), funcția CHR ReadKey returnează o valoare (97), iar în cazul în care "A" (cu majuscule) - CHR valoare (65). Prin apăsarea F1 taste funcționale. F10, tastele cursor, tastele Ins, Home, Del, End, PgUp, PgDn în tamponul este plasată o secvență de doi octeți: primul simbol # 0, și apoi extins codul cheie. Astfel, valoarea # 0, ReadKey revenirea functiei, este utilizat exclusiv în scopul de a spune programului pentru a genera codul de împrăștiere. După ce a primit această valoare, programul trebuie încă o dată rândul său, la funcția de a citi un cod de cheie extins.













Ie codul de scanare cheie. Acest cod este determinată de ordinea în conformitate cu care microprocesorul Intel 8042 sondaje periodic tastatura (scanări) starea cheilor.

Acest program simplu vă permite să specificați codul avansat de orice tastă. apăsați tasta Esc pentru a termina programul.

WriteLnCO1, ord (ReadKey): 8)

Dacă utilizați acest program, veți găsi că clic pe unele dintre taste este ignorat funcția ReadKey. Este mai presus de toate așa-numitele taste Shift - Shift, Ctrl, Alt. Tastele de forfecare în MS-DOS utilizat în mod normal pentru a comuta registru și tastatura sunt apăsate în combinație cu alte taste. În acest fel, de exemplu, de intrare diferite majuscule și litere mici. În plus, funcția ignoră Caps Lock de comutare tasta, Num. Lock, Scroll Lock, și „extra“ taste funcționale F11 și F12 IBM la tastatură, care este de neegalat pe tastatură modele anterioare IBMPC / XT (în aceste mașini folosite de tastatură 84-cheie, în timp ce pe IBM AT - 101-cheie ).

Tabel. 13.1 prevede coduri cheie avansate returnate de ORD (ReadKey). Pentru a intra în modul chirilica sunt coduri care corespund unei variante alternative de codare.

Tabelul 13.1 Codurile cheie avansate