有没有办法使用python将Windows鼠标光标更改为自定义光标?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有没有办法使用python将Windows鼠标光标更改为自定义光标?相关的知识,希望对你有一定的参考价值。

我希望能够使用python脚本将Windows鼠标光标全局更改为自定义光标(使用.ani或.cur扩展名)。是否有任何包或模块可以帮助我实现这一目标?

答案

它无法在全球范围内完成,因为它会破坏安全限制。不允许应用程序修改任何其他应用程序或系统窗口。

它只能由root / administrator运行的进程由系统C API完成。可能没有人为这些函数制作Python绑定。这是可能的,但由于使用有限,我认为没有任何Python模块可以做到这一点。

另一答案

您可以使用自己的图像作为鼠标光标。使用pyglet.image.load加载图像,然后用图像和光标的“热点”创建一个ImageMouseCursor。热点是图像中与屏幕上实际指针位置对应的点,例如箭头的点:

image = pyglet.image.load('cursor.png')
cursor = pyglet.window.ImageMouseCursor(image, 16, 8)
window.set_mouse_cursor(cursor)

您甚至可以使用OpenGL直接渲染鼠标光标。例如,您可以绘制三维光标或粒子轨迹。为此,子类MouseCursor并实现自己的draw方法。即使您在应用程序的其余部分中使用另一个投影,也将使用默认的pyglet窗口投影调用draw方法。

以上是关于有没有办法使用python将Windows鼠标光标更改为自定义光标?的主要内容,如果未能解决你的问题,请参考以下文章

当用户将鼠标悬停在滑块上时,使光标成为手

有没有办法仅使用键盘在 git bash(在 Windows 上)中复制文本?

使用文本框的箭头光标

UWP - 有没有办法在退出 ListView 时更改鼠标光标而不在拖放期间触发事件?

如何在 Windows 中隐藏光标? (德尔福)

如何在 Windows 窗体 C# 中伪造鼠标光标位置?