如何在JavaFX中区分鼠标左键和右键?

如何在JavaFX中区分鼠标左键和右键?,java,javafx-8,Java,Javafx 8,我正在用Java8制作一个玩具听力测试应用程序(我使用的是JavaFXVersion8)。 为了评估用户是否能听到声音,他必须用鼠标按钮点击UI按钮,该按钮对应于声音发出的一侧 因此,在单击事件中,我需要区分右键和左键单击按钮,但JFX似乎给我的所有信息都是 PRIMARY Represents primary (button 1, usually the left) mouse button. SECONDARY Represents seconday (button 3, usuall

我正在用Java8制作一个玩具听力测试应用程序(我使用的是JavaFXVersion8)。 为了评估用户是否能听到声音,他必须用鼠标按钮点击UI按钮,该按钮对应于声音发出的一侧

因此,在单击事件中,我需要区分右键和左键单击按钮,但JFX似乎给我的所有信息都是

PRIMARY 
Represents primary (button 1, usually the left) mouse button.

SECONDARY 
Represents seconday (button 3, usually the right) mouse button. 
这显然不够好:立体声频道不会仅仅因为用户是左撇子而反转

那么,有没有办法判断
PRIMARY
是鼠标左键还是鼠标右键


PS:显然,我可以通过明确要求用户在开始之前右键单击和左键单击来解决这个问题。我想知道是否有可能避免这种情况。

我一直在浏览API和Microsoft文档。据我所知,主鼠标按钮和次鼠标按钮没有唯一的名称。我在Java中找不到一个方法来确定“反转鼠标按钮”框是否勾选


创建“单击左键开始”按钮可以作为“开始”和主鼠标按钮检测。可能有一些Java库使用主/次鼠标按钮提供了更大的灵活性。

一般来说,Java API尽量避免使用这种依赖于硬件的东西,尽量避免假设任何关于平台硬件功能的东西。(例如,我在我的任何一台计算机上使用鼠标可能已经两年了;我现在只使用轨迹板。)您最好的选择可能是假设
已离开,并有一个选项允许用户切换此选项。在某种程度上,你必须信任用户(毕竟,你假设他们的左右扬声器/耳机位置正确…)。