如何在Java中处理多个鼠标输入?

时间:2008-11-04 15:18:41

标签: java mouse hci

我的一位朋友要求我实施一个蓝色和红色指针来表示两个独立鼠标的输入,以加快混音台方案的实时音频混音。我很乐意,但我认为这是一个好主意,我不知道从哪里开始寻找可能的解决方案。

我应该从哪里开始研究实现双鼠标输入的可行方法?

4 个答案:

答案 0 :(得分:7)

请看jinput

我有多个键盘使用它,我几乎可以肯定它也支持多个鼠标。

答案 1 :(得分:3)

不了解java ..但是对于C#/ c ++你可以试试 Microsoft Windows MultiPoint Software Development Kit

我在Windows上尝试过它..它适用于2个USB鼠标。

答案 2 :(得分:3)

这取决于您打算使用的操作系统。

Windows 上,您可以使用:

  1. CPNMouse - 一个驱动程序+软件组合,非常灵活,可以完全隐藏操作系统中的一些鼠标。
  2. RawInput - 仅由Windows XP提供的API。您可以使用它来区分两个鼠标输入,自己绘制光标并隐藏主光标。请查看SDGT的代码,这是此API的C#用法。
  3. 对于这两种解决方案,您必须构建一个应用程序的JNI桥接器
  4. 如果您使用的是 X.Org(X11)服务器,则会有一个名为MPX的修补版本,即使对于旧版应用程序也应支持多个鼠标。它现在应该是X.Org主干的一部分,但我不是很熟悉它。无论如何它有一个API,所以你可以通过JNI桥使用它。

答案 3 :(得分:0)

您可以使用多个设备,但在Java级别,所有鼠标事件都会合并为一个流。该事件不包括它来自哪个鼠标。你确实说过要混音,对吧?这种混合可能很有趣,但肯定不是你想要的。

我建议使用Java支持的midi界面,并将一些简单的midi控制器设备连接到多个旋钮或轨迹球。这些将作为midi事件进入,您可以检查状态以获取所需的详细信息。