Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как на Pascal-e писать readkey и keypressed вместе?

Lucky13 Мастер (1494), закрыт 16 лет назад
Чтобы программа не ждала нажатия клавишы, а действие выпоняла только по нажатию определенной. Помню, что нужны были скобки, но где и как - увы((

Лучший ответ
Gennady Гений (60625) 16 лет назад
Доброго времени суток.

Карапуз немного, самую малость, не прав. Его код будет работать до тех пор, пока не нажмут функциональную клавишу. В этом случае ReadKey вернет ноль. Вот правильный вариант

if KeyPressed then С := ReadKey;
if С = #0 then C := ReadKey;

В довесок привожу коды некоторых клавиш

HomeKey = #71; EndKey = #79; CtrlPgUpKey = #132;
LeftKey = #75; RightKey = #77; CtrlPgDnKey = #118;
DownKey = #80; UpKey = #72; CtrlHomeKey = #119;
PgUpKey = #73; PgDnKey = #81; CtrlEndKey = #117;
F1Key = #59;

Удачи!
Остальные ответы
Сергей Барановский Мудрец (14000) 16 лет назад
Как то так наверное:

if KeyPressed and (ReadKey = a) then {Действие}
proxy Просветленный (41590) 16 лет назад
Не совсем понял вопроса
(видимо, ещё не до конца проснулся.. . :)
Можно так:

Uses Crt;
Var
C : Char;
{ все остальные константы / переменные }

Begin

if Keypressed then C := Readkey;

{ а теперь - нужно проверить "C", т. е. , посмотреть,
какая клавиша была нажата и выполнить нужные действия:

if C= ...then ...

или так:

Case C of ...}

end.

Раньше писал на Pascal-е, поэтому
кое-какие мелочи ещё помню...
Похожие вопросы