Как я могу обработать несколько вводов мыши в Java?

StackOverflow https://stackoverflow.com/questions/262125

  •  06-07-2019
  •  | 
  •  

Вопрос

Мой друг попросил меня добавить синий и красный указатель для представления входов двух отдельных мышей, чтобы ускорить сценарий микшерского пульта для микширования звука в реальном времени. Я бы с удовольствием, но насколько я думаю, что это отличная идея, я понятия не имею, с чего начать поиск возможного решения.

С чего мне начать исследование жизнеспособного метода реализации двойных мышиных вводов?

Это было полезно?

Решение

Посмотрите на jinput .

У меня было несколько клавиатур, работающих с ним, я почти уверен, что он также поддерживает несколько мышей.

Другие советы

Это зависит от того, какую операционную систему вы собираетесь использовать.

В Windows вы можете использовать:

<Ол>
  • CPNMouse - сочетание драйвера и программного обеспечения, очень гибкое и позволяет полностью скрыть некоторые мыши от операционная система.
  • RawInput - API, предоставляемый только в Windows XP. Вы можете использовать его, чтобы различать два входа мыши, самостоятельно рисовать курсоры и скрывать основной курсор. Посмотрите на код SDGT , использования этого API на C #.
  • Для обоих решений вам потребуется создать мост JNI для вашего приложения.
  • Если вы используете сервер X.Org (X11) , существует исправленная версия под названием MPX , который должен поддерживать несколько мышей даже для устаревших приложений. Теперь он должен быть частью ствола X.Org, но я не очень знаком с ним. В любом случае у него есть API, поэтому вы можете использовать его через мост JNI.

    Вы можете использовать несколько устройств, но на уровне Java все события мыши объединяются в один поток. В событии не указывается, с какой мыши оно пришло. Вы сказали, что хотите микшировать аудио, верно? Ну, этот микс может быть интересным, но, конечно, не то, что вы хотите.

    Я бы предложил использовать MIDI-интерфейс, поддерживаемый Java, и подключить несколько простых устройств MIDI-контроллеров с помощью нескольких ручек или трекболов. Они появятся как миди-события, и вы сможете проверить состояние для получения необходимой информации.

    Лицензировано под: CC-BY-SA с атрибуция
    Не связан с StackOverflow
    scroll top