gpt4 book ai didi

python - 奇怪的 Tkinter 鼠标悬停行为

转载 作者:太空狗 更新时间:2023-10-30 01:16:27 25 4
gpt4 key购买 nike

我一直在尝试获取鼠标悬停事件来更改 Tkinter 中按钮小部件的背景颜色。我在网上获得了一些适用于文本的简单代码,但无法用于颜色。在这里:

from Tkinter import *
root - Tk()

b = Button(root, text='foo')
b.pack()

def enterB(event):
b.configure(text='bar', background='red')

def leaveB(event):
b.configure(text='foo')

b.bind('<Enter>', enterB)
b.bind('<Leave>', leaveB)

root.mainloop()

当我将鼠标放在按钮上时,文本变为“栏”,但背景颜色保持灰色。当我的鼠标离开按钮上方的区域时,背景颜色变为红色,文本变为“foo”。这与应该发生的情况相反。

如果我在 leaveB 函数的 b.configure 语句中设置 background='blue',其余部分保持不变,则离开按钮将使按钮保持蓝色,而永远不会是红色。

谁能告诉我发生了什么事?

谢谢。

最佳答案

首先,我猜这是第 2 行的错字,应该是 root = Tk()


除了在从按钮上移开鼠标时背景保持红色之外,该程序对我来说工作正常。这可以通过稍微修改 leaveB 函数来改变,如下所示:

def leaveB(event):
b.configure(text="foo", background="SystemButtonFace")

如果您使用的是 Windows,其中 "SystemButtonFace" 是默认的按钮表面颜色

关于python - 奇怪的 Tkinter 鼠标悬停行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13428233/

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