添加样式到Python tkinter按钮
Tkinter对基于Python的GUI程序的创建有很好的支持,它提供了不同的方式来为Tkinter画布上的按钮设定样式,可以基于它的字体、大小、颜色等。在本文中,我们将看到如何将样式应用于特定按钮或画布上的所有按钮。
应用于特定按钮
让我们考虑一个情况,当我们在画布上有两个按钮,我们想要仅应用一些样式到第一个按钮上。我们使用W.TButton作为配置的一部分,以及字体和前景颜色。
示例
from tkinter import *
from tkinter.ttk import *
# 设置画布
canv = Tk()
canv.geometry('200x150')
# 创建样式对象
sto = Style()
# 配置样式
sto.configure('W.TButton', font= ('Arial', 10, 'underline'),
foreground='Green')
# 按钮与样式
btns = Button(canv, text='Welcome !',
style='W.TButton',
command=canv.destroy)
btns.grid(row=0, column=1, padx=50)
# 按钮没有样式
btnns = Button(canv, text='Click to Start !', command=None)
btnns.grid(row = 1, column = 1, pady = 10, padx = 50)
canv.mainloop()
输出
运行上述代码给我们以下结果 –
应用于所有按钮
它是与上面类似的配置,不同之处在于它的样式为Tbutton,它自动应用于画布上的所有按钮。
示例
from tkinter import *
from tkinter.ttk import *
canv = Tk()
canv.geometry('200x150')
# 创建样式对象
sto = Style()
# 配置样式
sto.configure('TButton', font=
('calibri', 10, 'bold', 'underline'),
foreground='Green')
# 按钮1
btns = Button(canv, text='Welcome !',
style='TButton',
command=canv.destroy)
btns.grid(row=0, column=1, padx=50)
# 按钮2
btnns = Button(canv, text='Click to start !', command=None)
btnns.grid(row=1, column=1, pady=10, padx=50)
canv.mainloop()
输出
运行上述代码给我们以下结果 –