Tkinter 树视图样式

问题描述

为什么我的表格没有根据我定义的样式改变样式? 我尝试使用样式和地图,但没有任何改变。 似乎唯一有效的是主题配置。 滚动条也不显示在树视图中。

from tkinter import *
from tkinter import ttk

class Dashboard:

def __init__(self,filterdDf):

    self.filterdDf = filterdDf

    root =Tk()
    root.title('Dashboard')
    root.geometry('1300x690')
    root.resizable(False,False)

    frame = Frame(root,width=1100,height=690)
    frame.configure(background="gray28")
    frame.pack(fill=BOTH,expand=True)

    rows = len(filterdDf)

    tree = ttk.Treeview(root,columns=(1,2),height=rows,show="headings")
    tree.pack(side='left')
    tree.place(x=700,y=150)

    #Add some style:
    style = ttk.Style()

    style.theme_use("clam")

    style.configure("Treeview",background="silver",foreground="black",rowheight=55,fieldbackground="silver")

    #Change selected color:
    style.map("Treeview",background=[('selected','green')])

    tree.heading("#0",text="Label",anchor=W)
    tree.heading("#1",text="Approach",anchor=CENTER)
    tree.heading("#2",text="Recommendation",anchor=CENTER)

    tree.column("#0",width=120,minwidth=25)
    tree.column("#1",width=300,minwidth=25,anchor=W)
    tree.column("#2",width=150,anchor=CENTER)

    scroll = ttk.Scrollbar(frame,orient="vertical",command=tree.yview)
    scroll.pack(side='right',fill='y')

    tree.configure(yscrollcommand=scroll.set)

    for i in range(rows):
        tree.insert(parent='',index='end',values=(filterdDf[('Approaches','All')].iloc[i],filterdDf[('Recommendation Level','')].iloc[i]))

    root.mainloop()

这是我的 Treeview 的样子: 2 列填充数据。 谢谢!

enter image description here

这是样式配置的外观(不同的数据但相同的配置):

enter image description here

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)