gpt4 book ai didi

python - 在 Tkinter 中悬停后如何更改多个小部件的颜色?

转载 作者:太空宇宙 更新时间:2023-11-04 01:30:21 25 4
gpt4 key购买 nike

我正在尝试制作一个脚本,它将在悬停后更改小部件的背景和前景色。

from Tkinter import *

root=Tk()

Hover1=Button(root,text="Red color", bg="white")
Hover1.pack()

Hover2=Button(root,text="Yellow color", bg="white")
Hover2.pack()

Hover1.bind("<Enter>",Hover1.configure(bg="red"))
Hover1.bind("<Leave>",Hover1.configure(bg="white"))

Hover2.bind("<Enter>",Hover2.configure(bg="yellow"))
Hover2.bind("<Leave>",Hover2.configure(bg="white"))

root.mainloop()

但是当我将鼠标悬停在任何按钮上时,没有任何反应,它们保持白色。我知道我可以使用一个函数,但是每个小部件都有两个函数(1 个用于 ,1 个)。我想创建一个函数,它将重新着色我悬停的那个小部件,并解释为什么这个脚本没有按照我想要的方式执行。

我希望我能很好地描述我的问题。感谢您的每一个回答。

PS:我想避免上课。

末日山

最佳答案

您需要提供一个可调用函数来绑定(bind)到该事件。相反,您正在调用一个函数并传递其结果。像这样修复它:

Hover1.bind("<Enter>", lambda event, h=Hover1: h.configure(bg="red"))

关于python - 在 Tkinter 中悬停后如何更改多个小部件的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14264819/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com