gpt4 book ai didi

python - 按钮凹陷时改变颜色 Tkinter

转载 作者:太空宇宙 更新时间:2023-11-03 16:04:08 24 4
gpt4 key购买 nike

我怎样才能做到这一点,所以当我的程序中的任何按钮凹陷(因此被单击)时,该按钮会获得特定的背景颜色(白色)1秒。

我在想这样的事情:

每当 ButtonClicked = 凹陷时,ButtonClicked['bg'] = 'white' 持续 1 秒

但是我有很多按钮,每个按钮都有不同的功能。那么什么是一个易于实现的程序,以便所有按钮都会发生这种情况?

最佳答案

最简单的解决方案是创建您自己的自定义按钮类,并将行为添加到该类。

您可以使用after安排在一段时间后恢复颜色。

例如:

class CustomButton(tk.Button):
def __init__(self, *args, **kwargs):
self.altcolor = kwargs.pop("altcolor", "pink")
tk.Button.__init__(self, *args, **kwargs)
self.bind("<ButtonPress>", self.twinkle)

def twinkle(self, event):
# get the current activebackground...
bg = self.cget("activebackground")

# change it ...
self.configure(activebackground=self.altcolor)

# and then restore it after a second
self.after(1000, lambda: self.configure(activebackground=bg))

您可以像使用任何其他按钮一样使用它。它需要一个新参数 altcolor,这是您要使用的额外颜色:

b1 = CustomButton(root, text="Click me!", altcolor="pink")
b2 = CustomButton(root, text="No, Click me!", altcolor="blue")

关于python - 按钮凹陷时改变颜色 Tkinter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40023841/

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