Язык:
Русский
English
ReadKey (функция) (модуль Crt)
Читает символ из буфера клавиатуры.
Объявление
Function ReadKey : Char;
Режим
Windows, Real, Protected
Замечания
Символ не отображается на экране.
Выполнение программы прерывается до тех пор, пока не будет нажата клавиша. Если в буфере клавиатуры уже есть необработанные нажатия, сразу возвращает результат. Проверить, была ли нажата клавиша, можно вызовом функции KeyPressed.
При нажатии некоторых специальных клавиш (стрелки и функциональные клавиши) ReadKey возвращает нулевой символ (#0), а повторный вызов ReadKey возвратит сканкод нажатой клавиши.
Обычные символы перечислены в таблице кодов символов 866.
Коды специальных клавиш
Клавиша | Что возвращает ReadKey? |
---|---|
Escape | #27 |
Enter | #13 |
Ctrl+Enter | #10 |
Backspace | #8 |
Ctrl+Backspace | #127 |
Tab | #9 |
Shift+Tab | #15 |
F1 | #0, #59 |
F2 | #0, #60 |
F3 | #0, #61 |
F4 | #0, #62 |
F5 | #0, #63 |
F6 | #0, #64 |
F7 | #0, #65 |
F8 | #0, #66 |
F9 | #0, #67 |
F10 | #0, #68 |
← | #0, #75 |
↑ | #0, #72 |
→ | #0, #77 |
↓ | #0, #80 |
Delete | #0, #83 |
Insert | #0, #82 |
Home | #0, #71 |
End | #0, #79 |
Page Up | #0, #73 |
Page Down | #0, #81 |
NumPad 51 | #0, #76 |
Shift+F1 | #0, #84 |
Shift+F2 | #0, #85 |
Shift+F3 | #0, #86 |
Shift+F4 | #0, #87 |
Shift+F5 | #0, #88 |
Shift+F6 | #0, #89 |
Shift+F7 | #0, #90 |
Shift+F8 | #0, #91 |
Shift+F9 | #0, #92 |
Shift+F10 | #0, #93 |
Ctrl+F1 | #0, #94 |
Ctrl+F2 | #0, #95 |
Ctrl+F3 | #0, #96 |
Ctrl+F4 | #0, #97 |
Ctrl+F5 | #0, #98 |
Ctrl+F6 | #0, #99 |
Ctrl+F7 | #0, #100 |
Ctrl+F8 | #0, #101 |
Ctrl+F9 | #0, #102 |
Ctrl+F10 | #0, #103 |
Alt+F1 | #0, #104 |
Alt+F2 | #0, #105 |
Alt+F3 | #0, #106 |
Alt+F4 | #0, #107 |
Alt+F5 | #0, #108 |
Alt+F6 | #0, #109 |
Alt+F7 | #0, #110 |
Alt+F8 | #0, #111 |
Alt+F9 | #0, #112 |
Alt+F10 | #0, #113 |
Ctrl+← | #0, #115 |
Ctrl+→ | #0, #116 |
Ctrl+Home | #0, #119 |
Ctrl+End | #0, #117 |
Ctrl+Page Up | #0, #132 |
Ctrl+Page Down | #0, #118 |
Ctrl+2 | #0, #3 |
Ctrl+A | #1 |
Ctrl+B | #2 |
Ctrl+C2 | #3 |
Ctrl+D | #4 |
Ctrl+E | #5 |
Ctrl+F | #6 |
Ctrl+G | #7 |
Ctrl+H3 | #8 |
Ctrl+I | #9 |
Ctrl+J | #10 |
Ctrl+K | #11 |
Ctrl+L | #12 |
Ctrl+M | #13 |
Ctrl+N | #14 |
Ctrl+O | #15 |
Ctrl+P | #16 |
Ctrl+Q | #17 |
Ctrl+R | #18 |
Ctrl+S | #19 |
Ctrl+T | #20 |
Ctrl+U | #21 |
Ctrl+V | #22 |
Ctrl+W | #23 |
Ctrl+X | #24 |
Ctrl+Y | #25 |
Ctrl+Z | #26 |
Ctrl+[ | #27 |
Ctrl+\ | #28 |
Ctrl+] | #29 |
Ctrl+6 | #30 |
Ctrl+- | #31 |
Alt+Q | #0, #16 |
Alt+W | #0, #17 |
Alt+E | #0, #18 |
Alt+R | #0, #19 |
Alt+T | #0, #20 |
Alt+Y | #0, #21 |
Alt+U | #0, #22 |
Alt+I | #0, #23 |
Alt+O | #0, #24 |
Alt+P | #0, #25 |
Alt+A | #0, #30 |
Alt+S | #0, #31 |
Alt+D | #0, #32 |
Alt+F | #0, #33 |
Alt+G | #0, #34 |
Alt+H | #0, #35 |
Alt+J | #0, #36 |
Alt+K | #0, #37 |
Alt+L | #0, #38 |
Alt+Z | #0, #44 |
Alt+X | #0, #45 |
Alt+C | #0, #46 |
Alt+V | #0, #47 |
Alt+B | #0, #48 |
Alt+N | #0, #49 |
Alt+M | #0, #50 |
Alt+1 | #0, #120 |
Alt+2 | #0, #121 |
Alt+3 | #0, #122 |
Alt+4 | #0, #123 |
Alt+5 | #0, #124 |
Alt+6 | #0, #125 |
Alt+7 | #0, #126 |
Alt+8 | #0, #127 |
Alt+9 | #0, #128 |
Alt+0 | #0, #129 |
Alt+- | #0, #130 |
Alt+= | #0, #131 |
Приведённая таблица не претендует на полноту
См. также
Лекция №14.1: Методы создания пользовательского интерфейса
KeyPressed
Delay
Таблица символов 866 (ASCII, OEM, DOS)
Пример
Язык:
Русский
English
{ Пример программы для функции ReadKey }
var
C : String[2];
C2, TempS : String;
begin
WriteLn('Нажмите любую клавишу:');
C := ReadKey;
Str(Ord(C[1]), TempS);
C2 := '#' + TempS;
if C = #0 then
begin
C := C + ReadKey;
Str(Ord(C[2]), TempS);
C2 := C2 + ', #' + TempS;
end;
WriteLn('Вы нажали ', C, ', с кодом ASCII, равным ', C2);
end.