Program Read_Key; { Programa para leitura de teclas especiais: esc, setas, etc } uses crt; var tecla:char; begin clrscr; writeln('>>> Codigo das teclas <<<'); writeln; writeln('=> Pressione "X" para terminar o programa...'); writeln; tecla:=' '; while (Upcase(tecla) <> 'X') { Termina com 'x' ou 'X' } do begin tecla:=readkey; { Se o codigo retornado for igual a 0, entao esta e uma tecla com codigo extendido (ou seja, uma tecla especial), caso contrario, o valor retornado e o proprio codigo ASCII da tecla. } if (ord(tecla) <> 0) then writeln('Tecla = ',tecla,' - Codigo ASCII = ', ord(tecla)) else begin writeln('Tecla especial...'); writeln('Codigo ASCII da primeira leitura = 0'); tecla:=readkey; { Le a novamente a tecla } writeln('Codigo ASCII da segunda leitura = ',ord(tecla)); end; end; end.