2015-05-27 2 views
3

Я хочу следить за всем экраном, не ограничиваясь только моим графическим интерфейсом.Можно ли отслеживать указатель мыши по всему экрану в Python?

Я имел обыкновение делать это в C и MATLAB, но теперь я работаю в Python и Tkinter.

+0

возможно дубликат [Mouse Position Python Tkinter] (http://stackoverflow.com/questions/22925599/mouse-position-python-tkinter) – user2314737

+0

@ well3 вы можете сделать это с внешней Pygame библиотека зову, вы хотите его использовать? –

+0

Я никогда не смотрел внимательно на PyGame - что в этом хорошего? – Well3

ответ

0

Я считаю, что для этого вам нужно использовать некоторые системные библиотеки, поскольку Tkinter, вероятно, отслеживает только то, где указатель находится внутри главного окна.

Для этой цели и намного больше функциональных возможностей есть библиотека называется PyUserInput

Я надеюсь, что это то, что вы искали.

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() 

Также, пожалуйста, комментарий, если у вас есть какие-либо сомнения.

6

Глупый я - это действительно легко, вам даже не нужен графический интерфейс.

import Tkinter as tk 
root = tk.Tk() 

root.winfo_pointerx() # this returns the absolute mouse x co-ordinate. 
Смежные вопросы