如何在linux中使用python检测当前鼠标光标类型?

How to detect the current mouse cursor type using python in linux?

我想做的是使用 python.

找出当前在 Linux 中活动的光标类型(即指针、普通、插入)

我发现一个 post 提到 windows 使用 win32gui

win32gui 是 Windows 特定的,此库在 Linux 中不起作用。还有其他解决方案吗?

更新:我提出了三个解决方案,但它们相当费力和资源密集型。而且我还没有测试过它们,所以我不知道有什么障碍。所以在这一点上,我仍然很欣赏这个问题的替代解决方案。

(1) 您可以使用pyautogui 找到鼠标指针的位置,然后拍摄鼠标指针的快照。然后您可以将此图像与光标的测试图像进​​行比较,并使用 OpenCV.

计算两个图像的相似程度

(2) 运行 win32gui 通过 Wine 服务并将光标数据发送到 linux 应用程序。

(3) 使用python的ctype模块调用XFixes C library's XFixesGetCursorImage(display) function.

Use this library PyXCursor to get the image of cursor/mouse-pointer for an arbitrary application window in Linux - in Python using ctypes