Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.06.2010, 16:10   #1
zumm
БохЪ
Форумчанин
 
Аватар для zumm
 
Регистрация: 30.09.2009
Сообщений: 724
По умолчанию Клавиатура

Возник вопросец, как узнать какие клавиши нажаты в данный момент (хотя бы 3 последних). Сколько не ламал голову над этим вопросом так и не понял как это коректно реализовать...

PS находил где модуль с реализацией, но там одна и таже клавиша читалсь по 20 раз в секунду...
В планах порабощение вселенной...
zumm вне форума Ответить с цитированием
Старый 25.06.2010, 16:14   #2
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию

Код:
var k:char;
     A:array[1..3] of char;
...
k:=readkey;
A[1]:=k;
...
k:=readkey;
A[2]:=k;
...
k:=readkey;
A[3]:=k;
_-Re@l-_ вне форума Ответить с цитированием
Старый 25.06.2010, 16:30   #3
zumm
БохЪ
Форумчанин
 
Аватар для zumm
 
Регистрация: 30.09.2009
Сообщений: 724
По умолчанию

А освобождать? вдруг клавиша уже не нажата?
В планах порабощение вселенной...
zumm вне форума Ответить с цитированием
Старый 25.06.2010, 16:33   #4
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию

В общем, есть ещё логическая функция keypressed. Более не знаю.
_-Re@l-_ вне форума Ответить с цитированием
Старый 25.06.2010, 17:02   #5
zumm
БохЪ
Форумчанин
 
Аватар для zumm
 
Регистрация: 30.09.2009
Сообщений: 724
По умолчанию

юзал я и keypressed, не помогло...может не правильно юзал...
В планах порабощение вселенной...
zumm вне форума Ответить с цитированием
Старый 25.06.2010, 17:33   #6
Олвин
Экспериментатор
Форумчанин
 
Аватар для Олвин
 
Регистрация: 16.04.2008
Сообщений: 218
По умолчанию

Это делается следующим образом: создаёте бесконечный цикл (пусть выход из него будет при нажатии, к примеру, Esc) и пишете в нём:
Код:
ch : char;

if KeyPressed then
begin
 ch := ReadKey;
 case ch of
  32 : WriteLn('Вы нажали пробел');
  13 : WriteLn('Вы нажали Enter');
  112 : WriteLn('Вы нажали F1');
 end;
end;
Для создания сложных вещей не нужны сложные интерфейсы. (с) Линус Торвальдс
Олвин вне форума Ответить с цитированием
Старый 26.06.2010, 00:12   #7
zumm
БохЪ
Форумчанин
 
Аватар для zumm
 
Регистрация: 30.09.2009
Сообщений: 724
По умолчанию

Олвин, не нада учить меня пользоваться стандартными процедурами и функциями Тут речь иде о том как узнать какие клавиши зажаты на ДАННЫЙ момент...
В планах порабощение вселенной...
zumm вне форума Ответить с цитированием
Старый 26.06.2010, 13:02   #8
Олвин
Экспериментатор
Форумчанин
 
Аватар для Олвин
 
Регистрация: 16.04.2008
Сообщений: 218
По умолчанию

А какова задача? Может проще будет её решить стандартными средствами - без "извращений"?
Для создания сложных вещей не нужны сложные интерфейсы. (с) Линус Торвальдс
Олвин вне форума Ответить с цитированием
Старый 26.06.2010, 13:37   #9
zumm
БохЪ
Форумчанин
 
Аватар для zumm
 
Регистрация: 30.09.2009
Сообщений: 724
По умолчанию

Цитата:
А какова задача? Может проще будет её решить стандартными средствами - без "извращений"?
задачу я уже не однократно описывал
В планах порабощение вселенной...
zumm вне форума Ответить с цитированием
Старый 26.06.2010, 17:02   #10
Stepler
Форумчанин
 
Аватар для Stepler
 
Регистрация: 03.02.2008
Сообщений: 213
По умолчанию

Чем собственно ReadKey не устраивает? Функция возвращает сканкод последеней нажатой клавиши. Если хочется извращений то код последней нажатой клавиши можно прочитать с 60 порта.
Пишу программы на заказ, контакты под аватаром!
Отзывы тут
Stepler вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Клавиатура с ps/2 к usb Mikhail Bakurov Компьютерное железо 16 05.12.2014 23:11
клавиатура и си itwaswritten Помощь студентам 1 19.05.2010 14:47
Клавиатура Fenix_Elite Общие вопросы Delphi 5 23.11.2008 08:02
Клавиатура RealSHELS Общие вопросы Delphi 6 29.03.2008 15:52
Клавиатура Pusher Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 22.03.2008 00:47