KeyStroke是否有鼠标等效类?我正在寻找一个围绕一个MouseEvent的包装来描述哪个按钮被推(我可以通过SwingUtilities得到这个),以及任何使用的修饰符。我的想法是,我已经通过听众捕捉了AWT鼠标事件,然后将该事件处理并在虚拟世界中进行3D拾取。我想尝试以这种方式映射鼠标绑定(类似于带有swing控件的InputMap和ActionMap)。 KeyStroke一直是神派,任何人都知道MouseStroke或类似的?
答案 0 :(得分:4)
“鼠标”传统上被定义为最多有三个按钮。这也是Java MouseEvent.getButton()
支持的内容。
具有多个按钮的更高级鼠标通常作为多个HID设备安装。这意味着他们安装了两个驱动程序,用于鼠标和键盘。对于这些鼠标,您可以设置其他按钮的含义,通常它类似于按键(例如,移位)或双击。这些是Java可以捕获的事件,可以是KeyEvent的MouseEvent。
在驱动程序中实现了更高级的功能,例如“打开应用程序”或“更改DPI”。作为特定于设备,Java无法捕获这些事件(如果驱动程序支持,则必须为这些事件编写自己的本机侦听器)。