如何更改Tkinter LableFrame边框颜色

时间:2017-03-22 17:38:07

标签: python tkinter

我尝试将新样式应用于Tkinter LabelFrame并将颜色更新为红色,如下所示:

import Tkinter
from Tkinter import *
import ttk
from ttk import *
style = ttk.Style()
style.theme_create('appstyle', parent = 'alt',
    settings = {
        'TLabelframe': {
            'configure': {
                'bd': 'red'
            }
        }

    }
)
style.theme_use('appstyle')


labelframe = LabelFrame(root, text = "Group")
labelframe.grid(padx = 20, pady = 20)

left = Label(labelframe, text = "Inside the LabelFrame")
left.pack()

root.mainloop()

但结果仍然是淡化

enter image description here

你能告诉我如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

您是否想再次猜出该选项的名称?好的,这里有一个link,每个ttk小部件都有选项!只需将background选项更新为红色!

try:
    import tkinter as tk
    import tkinter.ttk as ttk
except ImportError:
    import Tkinter as tk
    import ttk

root = tk.Tk()
style = ttk.Style()
style.theme_create('appstyle', parent='alt',
                   settings={
                       'TLabelframe': {
                           'configure': {
                               'background': 'red'
                           }
                       },
                       'TLabelframe.Label': {
                           'configure': {
                               # 'background': 'red'     uncomment this to make even label red
                            }
                       }
                   }
                   )
style.theme_use('appstyle')


labelframe = ttk.LabelFrame(root, text="Group")
labelframe.grid(padx=20, pady=20)

left = tk.Label(labelframe, text="Inside the LabelFrame")
left.pack()

root.mainloop()

alt主题:

alt theme