2008-11-04 2 views
12

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

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

+0

Удар по этому вопросу: я думал о программном обеспечении, чтобы использовать второй экран, который есть у многих разработчиков (должен), и давая разработчикам в парах программирования ввод мыши. Тогда я понял, что будет возиться с большим количеством материалов драйвера HW, где я не знаю, как начать. – pbh101 2008-11-04 15:29:50

ответ

7

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

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

+0

Я согласен с Полом. На самом деле, немного копаться в форумах JInput вызывает это: http://www.javagaming.org/index.php/topic,16681.0.html – 2008-11-11 16:15:38

0

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

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

3

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

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

  1. CPNMouse - водитель + программное обеспечение комбинация, очень гибкая и позволяет полностью скрыть некоторые из мышей от операционной системы.
  2. RawInput - API, предоставляемый только для Windows XP. Вы можете использовать его, чтобы различать два входа мыши, сами рисовать курсоры и скрывать основной курсор. Взгляните на код SDGT, использование C# этого API.
  3. Для обоих решений вы должны построить мост JNI к приложению

Если вы используете X.Org (X11) сервер, есть Модифицированная версия под названием MPX, которая должна поддерживать несколько мышей, даже для устаревшие приложения. Теперь он должен быть частью ствола X.Org, но я не очень хорошо знаком с ним. Во всяком случае, у него есть API, поэтому вы можете использовать его через мост JNI.