Можно ли компонентами HiAsm реализовать программу обрабатывающую нажатия кнопок одновременно подключенных нескольких USB PC мышек?
Этот топик читают: Гость
Ответов: 542
Рейтинг: 12
|
|||
карма: 0 |
|
Ответов: 893
Рейтинг: 18
|
|||
Меня тоже интересовал такой вопрос , хотел сделать игру с возможностью раздельного управления мышками различных персонажей.
Пришол к выводу что можно если написать свои драйвера. |
|||
карма: 0 |
|
Ответов: 542
Рейтинг: 12
|
|||
А мне нужно используя один PC написать программу для школьного брэйнринга, двум командам в качестве пульта думал дать мышки с USB удлинителями. Вот так всегда... учитивая школьный буюджет приходится, что то придумывать правда не всегда удается реализовать.
Но в моем случае задачка по проще, потому что мне достаточно перехвативать нажатие любой кнопки и в программе сравнивать кто первый кликнул мышкой. |
|||
карма: 0 |
|
Ответов: 4664
Рейтинг: 767
|
|||
Забацай им самодельный девайс: две кнопки, подключенные через LPT или COM и программку, обрабатывающую их.
|
|||
карма: 26 |
|
Ответов: 542
Рейтинг: 12
|
|||
100 лет ничего не паял.
|
|||
карма: 0 |
|
Ответов: 397
Рейтинг: 34
|
|||
[flood]afandi, хорошо сохранился
![]() |
|||
карма: 0 |
|
Гость
Ответов: 17029
Рейтинг: 0
|
|||
Редактировалось 2 раз(а), последний 2021-05-21 12:58:11 |
|||
карма: 0 |
|
Ответов: 542
Рейтинг: 12
|
|||
Для хотя бы одной USB мышки есть пример перехвата нажатии?
|
|||
карма: 0 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
есть в инете драйвера, без установки которых под Windows распознать две мышки не возможно. Эти драйвера предоставляют свое API, через которое их и можно различить.
|
|||
карма: 27 |
|
Ответов: 5446
Рейтинг: 323
|
|||
afandi, у одной мышки выламываешь левую кнопку, у другой - правую. Ну или не выламываешь, а как-то блокируешь. Плюс заклеиваешь "глазок" (чтобы укачатель не уехал с кнопки). А дальше всё просто:
code_21645.txt Кнопка "S" на клавиатуре включает кнопку и выключает обе "лампочки". Для красного игрового стола используется левая кнопка, для зелёного - правая. После нажатия любой кнопки мыши дальнейшие нажатия блокируются. |
|||
карма: 1 |
| ||
файлы: 1 | code_21645.txt [1.3KB] [322] | ||
Голосовали: | afandi |
Ответов: 542
Рейтинг: 12
|
|||
Да вы просто гений, спасибо. Только вот программка только на коды клави реагирует.
|
|||
карма: 0 |
|
Ответов: 5446
Рейтинг: 323
|
|||
afandi писал(а): Только вот программка только на коды клави реагирует.Не понял. |
|||
карма: 1 |
|
Ответов: 542
Рейтинг: 12
|
|||
Ваша версия у меня не работала и я ее доработал, правда как то топорно я не уразумел как отключать перехват нажатии кнопки мишки после первого перехвата.
Осталось часики добавить. Кстати проверено при двух USB мышках работает нормально. code_21646.txt |
|||
карма: 0 |
| ||
файлы: 1 | code_21646.txt [1.9KB] [195] |
Ответов: 5446
Рейтинг: 323
|
|||
afandi, напоминаю: сначала надо нажать на клавиатуре букву "S", а потом уже левую/правую кнопки мыши на большой кнопке, подписанной "Кнопка".
------------ Дoбавленo в 03.20: Доработал схему:
Для судьи: S - запуск таймера (на 20 секунд), R - возобновление таймера после неверного ответа одной из команд (при этом её кнопка блокируется до следующего нажатия S). По истечении 20 секунд отсчёт останавливается и блокируются обе кнопки. Для капитанов: левая кнопка - ответ красного стола, правая - ответ зелёного стола. Жёлтый индикатор: идёт отсчёт времени. Если надо, могу добавить определение фальшстарта, а также блокировать кнопки R и S от случайного нажатия в неправильный момент. |
|||
карма: 1 |
| ||
Голосовали: | afandi |
Ответов: 542
Рейтинг: 12
|
|||
iarspider, спасибо. Вы сделали то чего нет у меня в схеме и использование кнопок клавиатуры против визуальных кнопок конечно правильно.
я старался делать по инструкции правил Брейн-ринга. Поэтому наверное правильно будет дать возможность организатору время ожидания ответа выбирать индивидуально. Правила брейн-ринга: http://windflower.spb.ru/ke/common/reglaments/brainlaws.html В моей версии были добавлены звуковые сигналы, тихий тик в обратном отсчете 10 сек. а на 5-й и далее сек. более громкий, также сигнал старта, завершения ринга. Не хватает сигнала фальстарта. Естественно каждый раз перед очередным раундом нужно сбрасывать счетчик. |
|||
карма: 0 |
| ||
файлы: 1 | braynring.sha [119.3KB] [272] |