我可以在Python中跟踪整个屏幕上的鼠标指针吗?

时间:2015-05-27 11:06:57

标签: python tkinter mouse

我希望鼠标悬停在整个屏幕上,而不仅限于我的GUI。

我曾经能够在C和MATLAB中完成它,但现在我在Python和Tkinter工作。

3 个答案:

答案 0 :(得分:6)

愚蠢的我 - 它非常简单,你甚至不需要运行GUI。

import Tkinter as tk
root = tk.Tk()

root.winfo_pointerx()  # this returns the absolute mouse x co-ordinate.

答案 1 :(得分:3)

尝试以下示例代码,这将有助于您更好地理解

import Tkinter as tk
import Xlib.display as display

def mousepos(screenroot=display.Display().screen().root):
    pointer = screenroot.query_pointer()
    data = pointer._data
    return data["root_x"], data["root_y"]

def update():
    strl.set("mouse at {0}".format(mousepos()))
    root.after(100, update)

root = tk.Tk()
strl = tk.StringVar()
lab = tk.Label(root,textvariable=strl)
lab.pack()
root.after(100, update)
root.title("Mouseposition")
root.mainloop()

如果您有任何疑问,请发表评论。

答案 2 :(得分:0)

我相信你需要使用一些系统库,因为Tkinter可能只跟踪指针在主窗口内的位置。

为此目的和更多功能,有一个名为PyUserInput

的库

我希望这就是你要找的东西。