python - Kivy Python 鼠标位置

标签 python mouseevent kivy

我正在尝试编写一个可以始终获取鼠标位置的应用程序。现在他们的代码需要单击我才能获得鼠标位置,但我想一直获得位置。

from kivy.app import App
from kivy.uix.label import Label

class MousePos(App):
    def build(self):
        from kivy.core.window import Window
        self.label = Label()
        Window.bind(mouse_pos=lambda w, p: setattr(self.label, 'Mouse Position', str(p)))
        return self.label

if __name__ == '__main__':
    MousePos().run()

当我在屏幕上拖动鼠标时,我可以添加什么来获取鼠标位置,以获取其位置?

最佳答案

实际上你一直都在获得这个职位。但是,要显示它,您需要更改标签的 text 属性:

from kivy.app import App
from kivy.uix.label import Label

class MousePos(App):
    def build(self):
        from kivy.core.window import Window
        self.label = Label()
        Window.bind(mouse_pos=lambda w, p: setattr(self.label, 'text', str(p)))
        return self.label

if __name__ == '__main__':
    MousePos().run()

代码setattr(self.label, 'Mouse Position', str(p))实际上为label对象添加了一个新的属性,称为Mouse Position,即没用过。

关于python - Kivy Python 鼠标位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34662672/

相关文章:

python - 安装仅供 Ansible 使用的 python pip 模块

python - Kivy 复选框在 ScrollView 中不起作用

python - Kivy 1.9.0 Windows 包KeyError : 'rthooks'

python - 我可以读取使用第一列和该列作为微调器的输入而不重复的 CSV 文件吗?

Python - 为什么不继承属性?

python - 如何使用asyncio模块并发调用nameko服务

Python 2.7 将 Hex 和 Dec 读取为 Str 然后添加它们

macos - 在 Mac OS X 中模拟物理鼠标移动

java - JFreeChart 获取鼠标坐标

鼠标按下项目 (img) 后的 Javascript 鼠标事件未按预期工作