gpt4 book ai didi

python - 将其悬停在 tkinter 中时如何更改 ttk 按钮的背景和前景

转载 作者:行者123 更新时间:2023-12-04 12:10:52 38 4
gpt4 key购买 nike

我正在尝试更改 ttk.tkinter鼠标悬停时,按钮背景为黑色,前景色为白色。试过highlightbackgroundactivebackground但不会产生我正在寻找的结果。

Desired button image

import tkinter as tk
import tkinter.ttk as ttk


root = tk.Tk()

style = ttk.Style(root)
#style.theme_use("clam")

style.configure('TButton', foreground="black", highlightthickness=5,
highlightbackground='#3E4149', highlightforeground="white",
activebackground="black")

btr = ttk.Button(root, text="TEST BUTTON")
btr.pack()

root.mainloop()

最佳答案

ttk 按钮外观由主题驱动(3D/Color-alt/classic/default、Color-clam)。不设置/其他使按钮平坦/灰色,设置不会改变事情。
要使 ttk TButton 更改颜色,可以使用 map 来实现。 3D 外观需要borderwidth.Only Classic 使用highlight 形成一个外环。
类似答案见:Python: Changing ttk button color depending on current color?

import tkinter as tk
import tkinter.ttk as ttk
root = tk.Tk()
style = ttk.Style()
style.theme_use("classic")

style.map("C.TButton",
foreground=[('!active', 'black'),('pressed', 'red'), ('active', 'white')],
background=[ ('!active','grey75'),('pressed', 'green'), ('active', 'black')]
)
btr = ttk.Button(root, text="TEST BUTTON", style="C.TButton")
btr.grid(column=0,row=0,sticky='nsew');
root.mainloop()

关于python - 将其悬停在 tkinter 中时如何更改 ttk 按钮的背景和前景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57186536/

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