22.11.2010, 00:17 | #1 (permalink) |
Member
Регистрация: 15.11.2010
Сообщений: 34
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Программа с завязкой на стрелки клавиатуры
|
22.11.2010, 00:17 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Пока участники форума думают над вашей проблемой, обратите внимание на это Подсветка клавиатуры Светомузыка из клавиатуры Переводим стрелки Красные стрелки в uTorrent Перепрограммирование клавиатуры Управление курсором мыши с клавиатуры. Распределение на две клавиатуры. |
22.11.2010, 13:29 | #3 (permalink) |
support
Регистрация: 19.08.2007
Адрес: Зея
Сообщений: 15,797
Записей в дневнике: 71
Сказал(а) спасибо: 166
Поблагодарили 203 раз(а) в 86 сообщениях
Репутация: 75760
|
Будем считать, что ЯП - Pascal . Решение может быть следующим:
Код:
uses crt; var x1,y1,x2,y2,k:integer; c:char; flag:boolean; begin TextBackground(black); clrscr; TextBackground(blue); x1:=30; y1:=10; x2:=50; y2:=13; window(x1,y1,x2,y2); {определяем окно с начальными координатами} clrscr; {инициализируем текстовое окно с очисткой экрана} flag:=false; repeat {цикл изменения размеров} c:=readkey; if c=chr(0) then c:=readkey; {игнорируем управляющий символ} k:=ord(c); {определяем код введенного символа} if k=67 then flag:=true; {нажатие клавиши F9} if flag then begin case k of 72: if y1>1 then y1:=y1-1 else y1:=1; {стрелка вверх} 80: if y2<25 then y2:=y2+1 else y2:=25; {стрелка вниз} 75: if x1>1 then x1:=x1-1 else x1:=1; {стрелка влево} 77: if x2<80 then x2:=x2+1 else x2:=80; {стрелка вправо} end; window(x1,y1,x2,y2); {определяем окно с текущими координатами} TextBackground(blue); {определяем цвет фона} clrscr; {инициализируем текстовое окно с очисткой экрана} writeln('Test text Test text Test text'); {выводим контрольную фразу в новое текстовое окно} end; until c=chr(13); {отрабатываем нажатие Enter} end.
__________________
Убить всех человеков! |
24.11.2010, 13:59 | #5 (permalink) |
support
Регистрация: 19.08.2007
Адрес: Зея
Сообщений: 15,797
Записей в дневнике: 71
Сказал(а) спасибо: 166
Поблагодарили 203 раз(а) в 86 сообщениях
Репутация: 75760
|
Не знаю, как у вас, но у меня все нормально работает. Попробуйте на своем компьютере в листинге 75 и 77 код местами поменять.
__________________
Убить всех человеков! |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
24.11.2010, 19:03 | #7 (permalink) |
support
Регистрация: 19.08.2007
Адрес: Зея
Сообщений: 15,797
Записей в дневнике: 71
Сказал(а) спасибо: 166
Поблагодарили 203 раз(а) в 86 сообщениях
Репутация: 75760
|
Рад за вас!
__________________
Убить всех человеков! |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|