2012-07-12 133 views
0

我曾经在windows中工作,如果在我的C#wpf应用程序中,我想检测到鼠标和鼠标向下,我使用mouseup事件做了它。如何在Linux中读取鼠标和鼠标按下事件?

现在我想在C++中开发一个简单的应用程序,它可以在Linux中检测到鼠标悬停和鼠标停止事件。我不知道如何继续,这是最好的方式和使用的库。请指导我如何继续。

回答

3

你的问题太广泛了...但我会尽力去尝试。

您可以用设备的访问级别去:

  1. 您可以直接从/dev/input/*读取输入事件。这并不困难,但您的应用程序需要root访问权限,否则您必须更改设备的权限。主要优点是您甚至可以在没有与X服务器建立连接的情况下阅读鼠标。

  2. 可以作为X客户端工作:

    一个。您可以直接使用X访问,Xlib(并非真正推荐)。

    b。您可以使用工具箱库,例如GTK +,Qt或WxWidgets等等。

使用选项2.如果您想要从其他应用程序获取窗口中发生的事件,可能会遇到困难。因人而异。

+0

2. c。 libxdo - 查看我的答案。 – 2012-07-12 15:29:17

+0

@ H2CO3:不错的库,但它可以接收鼠标事件吗?我浏览了文档,但没有找到任何功能。 – rodrigo 2012-07-12 16:07:59

+0

嗯,我用它来控制一些外部硬件,使用鼠标指针的位置,所以它应该是... – 2012-07-12 16:10:24

1

一个非常简单和快速的解决方案可能是libxdo