![]() |
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
![]() |
ДенисС |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 9 Репутация: ![]() ![]() ![]() |
Стал вот потихоньку разбираться с паскалем, вроде что то получается. Вот возникла проблема: как задействовать стрелки и прочии несимвольные клавиши? С буквами-цифирьками вроде все просто, пишешь например C:=readln, а потом разными способами опредиляешь, что надо сделать с этой клавишей. А вот как быть со стрелками - как то непойму. Они вроде таким способом в строковую переменную ничего не записывают. Где-то краем уха услышал, что используется запись каким-то сложным шифром, а вот как его после этого опредилять, и какие кнопки каким шифром опредиляются - не слышал. Может здесь кто подскажет, как это все надо делать?
|
![]() ![]() |
SKVOZNJAK |
![]()
Сообщение
#2
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 930 Пол: Мужской Репутация: ![]() ![]() ![]() |
Дык просто. При нажатии курсоров, эфок и т. д. В буфер клавы записывется два числа, впереди стоит 0.
Код {ПРОСМОТР КОДОВ КЛАВЫ} USES CRT; VAR Q3:BYTE; Q8:WORD; BEGIN FOR Q3:=1 TO 100 DO BEGIN Q8:=ORD(READKEY); WRITELN(Q8); DELAY(200); END; END. Для чтения клавы в проге используй IF KEYPRESSED=TRUE THEN READKEY Время от времени обнуляй буфер FOR Q:=1 TO 15 DO IF KEYPRESSED=TRUE THEN READKEY Сообщение отредактировано: SKVOZNJAK - |
![]() ![]() |
![]() |
Текстовая версия | 28.04.2025 11:38 |