Как использовать ReadKey для получения кода функциональных клавиш?
Функциональные клавиши возвращают расширенный код, состоящий из двух символов, например, стрелки, или буквенно-цифровая клавиатура в комбинации с Alt, Ctrl, и т.д.
Пример обработки клавиатуры:
case ReadKey of {читаем код }
#0:case ReadKey of {код оказался расширенным}
#59:Writeln('Hажали F1');
#60:Writeln('Hажали F2');
{.......................}
end {case}; {закончили обработку расширенных кодов}
#13:Writeln('Hажали Enter');
#27:Exit
end {case}
Для того, чтобы узнать все коды воспользуйтесь программой:
Uses
Crt;
var
key:char;
begin
repeat
key:= ReadKey; {читаем код }
if Key = #0 then begin {код оказался расширенным}
Write(Ord(Key):3,','); {печатаем первый код }
key:= ReadKey; {читаем расширенный код }
end; {закончили обработку расширенных кодов}
Writeln(Ord(Key):3); {печатаем основной код }
until Key = #27; {Цикл, пока не нажмем Esc}
end.