0

有一些方法可以使用基于 XNextEvent 循环的 Xlib 获取鼠标和键盘的设备路径?我需要知道 /dev/input/event* 会生成特定的事件,例如鼠标按下和键盘键 F1 按下。

我在 Xorg 中将 evdev 用于输入设备,我搜索了文档但找不到方法。

我也接受一些应用程序的建议,我可以使用这些应用程序根据鼠标按下和键盘按下等事件来识别输入设备。

谢谢。

编辑:如果有一种方法可以使用另一个库,最好是带有 python 绑定的库,请告诉我。

4

1 回答 1

2

我意识到 Xlib 没有获取输入设备的文件描述符的方法,所以我想出了另一种解决这种情况的方法,还没有准备好,但显然是最好的方法,只是在这里发布给有一样的问题。

我正在使用模块python-evdev(在 ubuntu 中安装了 pip),通过这个模块我可以监控设备是 /dev/input/event*,所以我只需要为我之前确定的每个设备启动一个线程是鼠标或键盘(使用模块 evdev 并检查设备是否具有带有事件代码(如 ecodes.KEY_F1 和 ecodes.BTN_MOUSE)的“capabilities(verbose=True)”),当事件发生时,写入共享变量,我应该监控。

对于在 Xorg 中运行的图形界面,没有 Windows 管理器,我使用 python-glade2,就像一个魅力,我使用 xinit 运行带有 python-glade2 应用程序的 Xorg。

于 2012-11-13T14:31:48.673 回答