📜  obtenir coordonnees souris python (1)

📅  最后修改于: 2023-12-03 14:44:51.971000             🧑  作者: Mango

获取Python中鼠标坐标的方法

如果你正在编写一个涉及鼠标输入的Python程序,你需要了解如何获取鼠标的坐标。在Python中,获取当前鼠标位置的方法取决于你所使用的GUI库。此处我们以Tkinter为例进行讲解。

获取鼠标位置

要获取鼠标位置,我们需要使用Tkinter库的winfo_pointerxy()方法。如下面这个简单的例子,当我们在鼠标指针变动以及鼠标左键按下时,可以输出鼠标的横坐标和纵坐标。

from Tkinter import *
root = Tk()

def motion(event):
    x, y = event.x, event.y
    print('{}, {}'.format(x, y))

root.bind('<Motion>', motion)
root.bind('<Button-1>', motion)

root.mainloop()

在这个例子中,我们用bind()方法绑定<Motion><Button-1>这两个事件,当鼠标移动或左键按下时便执行motion函数。motion函数则可以通过event.xevent.y属性获取鼠标当前的横坐标和纵坐标。

封装功能

当我们需要重复使用鼠标位置获取的功能时,我们可以将其封装成一个函数,方便我们多次调用。如下面这个例子,我们定义了一个名为get_coord()的函数,可以在需要的地方直接调用。

from Tkinter import *
root = Tk()

def get_coord():
    x, y = root.winfo_pointerxy()
    print('{}, {}'.format(x, y))

root.bind('<Button-1>', lambda e: get_coord())

root.mainloop()

在这个例子中,我们将get_coord()函数封装了起来,可以很方便地调用。当鼠标左键按下时,就会执行get_coord()函数并输出当前鼠标的横坐标和纵坐标。

结论

如果你需要在Python程序中获取鼠标的位置坐标,那么你可以使用Tkinter的winfo_pointerxy()方法。可以将其封装成一个函数,方便在多个地方调用。