使用nsIEnvironment来确定鼠标是左手还是右手

时间:2014-05-13 14:49:00

标签: firefox-addon mouse xpcom

我想检测用户是否正在使用鼠标,左键是主键(e.button == 0),右键是辅助键(e.button == 1)。我可以使用nsIEnvironment吗?

https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIEnvironment

是否可以通过nsIEnvironment确定用户鼠标有多少按钮?

由于

1 个答案:

答案 0 :(得分:1)

你根本不需要检查这个,实际上在处理鼠标事件时根本不应该检查这个。

docs州:

  

对于配置为左手使用的鼠标,按钮操作会反转。在这种情况下,值从右向左读取。

因此,您应该始终认为event.button == 0(左)是主要的,event.button == 2(右)是次要的,event.button == 1是中间点击。

如果你出于其他原因需要这个:我不知道有什么方法可以通过XPCOM可靠地检查这个(nsIEnviroment根本没有与此无关),因为这是一个基础功能XPCOM不容易暴露的桌面环境/操作系统。您需要使用js-ctypes或二进制组件编写与平台相关的代码。