Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на языке Pascal


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Pascal

Выпуск № 74
от 19.07.2005, 10:50

Администратор:Калашников О.А.
В рассылке:Подписчиков: 110, Экспертов: 22
В номере:Вопросов: 1, Ответов: 2


Вопрос № 23444: Здравствуйте, ув.! Скажите пожалуйста, как запрограммировать нажатие нескольких клавиш? Например q,w,e вместе....

Вопрос № 23.444
Здравствуйте, ув.!
Скажите пожалуйста, как запрограммировать нажатие нескольких клавиш?
Например q,w,e вместе.

Приложение:

Отправлен: 13.07.2005, 15:26
Вопрос задал: Стомов Евгений (статус: Посетитель)
Всего ответов отправлено: 2

Отвечает: Ayl
Здравствуйте, Стомов Евгений!

Ловишь 9-е прерывание, заводишь 3 флага - по одному для каждой из клавиш.
Теперь анализируешь код клавиши по прерыванию. Если он соответствует нажатию одной из твоих ожидаемых клавиш -- устанавливаешь соответствующий флаг. Если происходит отпускание клавиши - сбрасываешь флаг.
После этого проверяешь, что все 3 флага установлены. Если это так - значит в данный момент все 3 клавиши нажаты.

---------
Трудное - то, что можно сделать немедленно. Невозможное - то, для выполнения чего требуется немного больше времени
Ответ отправил: Ayl (статус: Профессор)
Отправлен: 13.07.2005, 15:57
Оценка за ответ: 4
Комментарий оценки:
Извиняюсь, но я ничего не понял из того, что Вы написали.
Про флаги и прерывания я ничего не знаю, тем более как их "ловить".

Отвечает: sir henry
Здравствуйте, Стомов Евгений!
В буфер клавиатуры они все равно заходят последовательно, сначала "q", потом "w", потом "e". Если сумеете нажать их одновременно - попадете в книгу рекордов Гиннеса. :)
Так что программируйте как обычно - сначала отслеживайте вообще нажатие какой либо клавиши с помощью KeyPressed, а потом считывание клавиши из буфера с помощью ReadKey.
Ответ отправил: sir henry (статус: Профессор)
Отправлен: 13.07.2005, 16:50
Оценка за ответ: 5
Комментарий оценки:
Спасибо!


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, RusFAQ.ru, Россия, Москва. Все права защищены.
Идея, дизайн, программирование, авторское право: Калашников О.А.

Яндекс


Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.pasplus
Отписаться
Вспомнить пароль

В избранное