您如何从/ dev / input / mice读取鼠标按钮状态?我想检测按钮是否被按下。
您可以打开设备并阅读。来自/ dev / input / mice的事件的长度为3个字节,需要进行一些解析。我认为现在首选的方法是改用/ dev /
input / event#。但是,这是一个使用/ dev / input / mice的小示例。
#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
int main(int argc, char** argv)
{
int fd, bytes;
unsigned char data[3];
const char *pDevice = "/dev/input/mice";
// Open Mouse
fd = open(pDevice, O_RDWR);
if(fd == -1)
{
printf("ERROR Opening %s\n", pDevice);
return -1;
}
int left, middle, right;
signed char x, y;
while(1)
{
// Read Mouse
bytes = read(fd, data, sizeof(data));
if(bytes > 0)
{
left = data[0] & 0x1;
right = data[0] & 0x2;
middle = data[0] & 0x4;
x = data[1];
y = data[2];
printf("x=%d, y=%d, left=%d, middle=%d, right=%d\n", x, y, left, middle, right);
}
}
return 0;
}
鼠标单击生成以下内容:
x=0, y=0, left=1, middle=0, right=0
x=0, y=0, left=0, middle=0, right=0
和一个鼠标移动(请注意“相对”鼠标移动坐标):
x=1, y=1, left=0, middle=0, right=0
问题内容: 我正在使用Ubuntu 12.04。对于我的一个应用程序,我需要使用脚本在软件中控制鼠标。 我知道鼠标设备是。如果我做一个,然后移动鼠标,我看到很多输出都转储到了屏幕上。 现在,我希望删除鼠标,并有一个脚本可以控制鼠标指针 请为我提供以下命令的帮助: (1)左键单击 (2)右键单击 (3)将鼠标从一个位置移动到另一个位置。 请注意,我正在寻找Shell脚本解决方案,而不是C / C +
简介 限制: 下面描述的 AutoHotkey 重映射功能通常不如直接通过 Windows 注册表进行映射那么直接有效. 对于每种方法的优点和缺点, 请参阅 注册表重映射. 重映射键盘和鼠标 内置重映射功能的语法为 OriginKey::DestinationKey。例如, 只包含下面这行内容的 脚本 会将 "a" 键重映射成 "b" 键: a::b 上面的例子没有改变 "b" 键自身的功能. "
所以我有这个anchorpane,我希望为第二个鼠标键添加一个鼠标listner。我尝试了以下方法,但我一直得到一个错误,有人知道问题是什么吗? 为了记录在案,我也尝试过这样做: 绑定不匹配:MouseButton类型不能有效替代EventHandler类型的有界参数
问题内容: 有没有一种方法可以检测JavaScript中的鼠标按钮当前是否处于按下状态? 我知道“ mousedown”事件,但这不是我所需要的。按下鼠标按钮后的一段时间,我希望能够检测它是否仍被按下。 这可能吗? 问题答案: 关于Pax的解决方案:如果用户有意或无意地单击了多个按钮,则该按钮将不起作用。不要问我我怎么知道:-(。 正确的代码应如下所示: 通过这样的测试: 如果您想知道按下了什么按
问题内容: 我已经在单选组中动态创建了两个单选按钮,并选中其中一个。我需要在我按下另一个按钮时将其值保存在字符串中。但是我已经为此实现了,但是第一次没有用。这是我的代码。 问题答案: xml文件 Java代码
我正在用MCP(Mod Coder Pack)制作我自己的Minecraft客户端。 但我不知道如何才能检测例如在更新方法中,如果鼠标按钮被按下,以及哪个。 Im使用MCP 9.10(Minecraft 1.8) 我在谷歌也在这个平台上搜索,但我什么也没找到。 我希望你们中有人能帮助我。