Je veux vous demander les gars s'il y a un moyen d'obtenir le nom ou l'identifiant du widget qui est actuellement le pointeur de la souris. Y-a-t'il une façon de le faire? Merci pour toute réponse.Tkinter - Sur quel widget est actuellement le pointeur de la souris?
0
A
Répondre
1
Normalement vous obtenez cette information d'une liaison. Cependant, si vous voulez interroger le système à tout moment pour trouver quel widget est sous la souris, vous pouvez utiliser winfo_pointerxy
pour obtenir les coordonnées de la souris, puis les passer à winfo_containing
pour obtenir le widget sous ces coordonnées.
Voici un exemple de programme qui imprime en continu le widget sous la souris:
import tkinter as tk
def print_widget_under_mouse(root):
x,y = root.winfo_pointerxy()
widget = root.winfo_containing(x,y)
print("widget:", widget)
root.after(1000, print_widget_under_mouse, root)
root = tk.Tk()
label_foo = tk.Label(root, text="Foo", name="label_foo")
label_bar = tk.Label(root, text="Bar", name="label_bar")
button = tk.Button(root, text="Button", name="button")
button.pack(side="bottom")
label_foo.pack(fill="both", expand=True)
label_bar.pack(fill="both", expand=True)
print_widget_under_mouse(root)
root.mainloop()