我的目标是将事件绑定到窗口。例如,我要在鼠标指针进入窗口时调用一个函数。下面的代码可以做到这一点,但是遗憾的是,每当鼠标指针进入Button时,该函数也会被调用。我尝试了B.unbind("<Enter>")
,但是它不起作用。任何帮助将不胜感激
import tkinter as tk
root = tk.Tk()
def function(event):
print("Hello World")
B = tk.Button(root, text ="Label")
root.bind("<Enter>",function)
root.geometry("100x100")
B.pack()
root.mainloop()
答案 0 :(得分:0)
一种实现此目的的方法是检查event.widget
并查看它是否是Tk
实例的根窗口。
import tkinter as tk
root = tk.Tk()
def function(event):
if isinstance(event.widget,tk.Tk): #check if event widget is Tk root window
print("Hello World")
B = tk.Button(root, text ="Label")
root.bind("<Enter>",function)
root.geometry("100x100")
B.pack()
root.mainloop()