私の目的は、マウスがラベルの上に移動したときにラベル ウィジェットのテキストを変更することです。1 つのラベルについては、次のようにします。
import Tkinter as tk
def fun1(event):
label.config(text="Haha")
def fun2(event):
label.config(text="Label1")
root=tk.Tk()
label=tk.Label(root,text="Label1")
label.grid(row=1,column=1)
label.bind("<Enter>", fun1)
label.bind("<Leave>", fun2)
root.mainloop()
しかし今、私は for ループによって生成された一連のラベルと、変更したいテキストを含むリストを持っています。
mylist=['a','b','c','d','e']
for i in range(5):
tk.Label(root,text="Label"+str(i)).grid(row=i+1,column=1)
これにより、番号付きの 5 つのラベルが生成されます。個々のラベルごとにマウス オーバー イベントを追加して、ラベル 1 にマウスを合わせると「a」に変わり、ラベル 2 にマウスを合わせると「b」に変わるなどのことはできますか? 参考までに、mylist 内のアイテムの数は、for ループで使用される数と常に同じになります。