IPB
ЛогинПароль:

> Правила раздела!

1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!

> Readkey
сообщение
Сообщение #1


Гость






Можно ли так сделать, чтобы кроме 3 клавиш програма не реанировала на нажатия других? Если можно, то как?
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 7)
сообщение
Сообщение #2


Гость






Можно... Определи СВОЮ функцию с именем ReadKey, которая будет "пропускать" только нажатие трех нужных тебе клавиш, и игнорировать остальные...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Ищущий истину
******

Группа: Пользователи
Сообщений: 4 825
Пол: Мужской
Реальное имя: Олег

Репутация: -  45  +


Вариант...
Поставить резидента на 09h, читать скан коды при обработке, если клавиши запрещенные то чистить буфер клавы, если разрешенные, передавать работу стандартному обработчику.


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






А как-то попроще нельзя? О_о
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






"Попроще" чем ЧТО? Чем ЭТО:
uses crt;

Function ReadKey: Char;
Var ch: Char;
Begin
repeat
Ch := Crt.ReadKey;
Case Ch Of
#0: Crt.ReadKey;
'a', 'b', 'c': Begin
ReadKey := Ch; Exit;
End;
End;
until false;
End;

begin
writeln(readkey);
end.
???

Ну, попробуй запустить и понажимать ЛЮБЫЕ клавиши, кроме 'a', 'b', 'c' ...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Новичок
*

Группа: Пользователи
Сообщений: 25
Пол: Мужской
Реальное имя: Иван

Репутация: -  0  +



Ch := Crt.ReadKey;


Что надо указать в настройках TB7, чтобы эта конструкция начала работать? Или в ТП такое невозможно?

Сообщение отредактировано: DFooz -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Смотрю...
*****

Группа: Пользователи
Сообщений: 1 055
Пол: Мужской
Реальное имя: Пшеничный Алексей Анатольевич

Репутация: -  6  +


А что, разве это не работает?
Код в студию.


--------------------
Если что-то не делает того, что вы запланировали ему делать - это еще не означает, что оно бесполезно.
--------------------
Прежде, чем задать вопрос - Правила :: FAQ :: Поиск
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Новичок
*

Группа: Пользователи
Сообщений: 25
Пол: Мужской
Реальное имя: Иван

Репутация: -  0  +


всё, разобрался
Код
#0: Crt.ReadKey;

в этой строке переменной в коде volvo нет, т.е. ch:=Crt.ReadKey. smile.gif

DFooz, не надо умничать! Если бы надо было присвоить значение переменной, я бы это сделал. Оно НЕ НУЖНО! А вызов функции как процедуры еще никто не отменял, если у тебя неправильно настроена IDE, то это ТВОЯ проблема, а вот говорить, что код - нерабочий я тебе не позволю!

Этот код, между прочим, копировался сюда из редактора. Купи выпрямитель рук!


Сообщение отредактировано: volvo -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 10.09.2025 16:40
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name