我想给按钮上色,但此刻我只发现一次为所有颜色上色。
我在bg = "red"
内通过ttk.button()
进行了尝试,但返回以下错误:
/ _ tkinter.TclError:未知选项“ -bg”
style = ttk.Style()
style.configure("TButton",foreground="red")
#Botoes para funcoes da treeview
ttk.Button (text='Deletar', command = self.delete).grid(row=5,column=0, sticky = W + E)
ttk.Button (text='Editar', command = self.editar).grid(row=5,column=1, sticky = W + E)
希望您能帮助我,我将不胜感激。
答案 0 :(得分:2)
您不能在ttk.Style()
中使用背景和前景的 bg 或 fg 简短形式必须使用完整的单词 background 和 foreground 来配置样式。
tkinter.TclError:未知选项“ -bg”
您收到的错误是因为您无法将 -bg 作为参数传递给ttk.Button()
。要配置任何ttk小部件的样式,您必须使用ttk.Style
及其受尊敬的样式名称,例如 Button:“ TButton”,Label:“ TLabel”,Frame:“ TFrame” ,等等请参见documentation的Tk主题小部件。
要为不同的按钮创建单独的样式,则可以创建自定义样式名称。
例如:
from tkinter import *
from tkinter import ttk
root = Tk()
button1_style = ttk.Style() # style for button1
# Configure the style of the button here (foreground, background, font, ..)
button1_style.configure('B1.TButton', foreground='red', background='blue')
button1 = ttk.Button(text='Deletar', style='B1.TButton')
button1.pack()
button2_style = ttk.Style() # style for button2
# Configure the style of the button here (foreground, background, font, ..)
button2_style.configure('B2.TButton', foreground='blue', background='red')
button2 = ttk.Button(text='Editar', style='B2.TButton')
button2.pack()
root.mainloop()