2012-07-12 136 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