在 tkinter 树视图中创建网格线 [英] Creating a grid lines inside of tkinter treeview

查看:64
本文介绍了在 tkinter 树视图中创建网格线的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个在 tkinter 中制作的简单树视图.是否可以在 tkinter tkinter treview 内制作一个网格,使其看起来更像一张桌子?

I have one simple treeview made in tkinter. Is it possible to make a grid inside the tkinter treview, so that it looks more like a table?

我想让它更用户友好",这样表格/树视图的可视化效果会更好.

I want to make it more "user-friendly", so visualization of the table/treeview can be better.

from tkinter import *
from tkinter import ttk

myApp = Tk()
myApp.title(" Program ")                         
myApp.geometry("800x700")


tree = ttk.Treeview(myApp,height=25)
tree['show'] = 'headings'

sb = ttk.Scrollbar(myApp, orient="vertical", command=tree.yview)
sb.grid(row=1,column=1,sticky="NS",pady=5)

tree.configure(yscrollcommand=sb.set)

tree["columns"]=("1","2","3")

tree.column("1", width=50)
tree.column("2", width=50)
tree.column("3", width=50)

tree.heading("1", text="Col 1")
tree.heading("2", text="Col 2")
tree.heading("3", text="Col 3")

item = tree.insert("", "end", values=("",))

tree.grid(row=1,column=0,padx=5,pady=5)

myApp.mainloop()

推荐答案

我相信让其更加用户友好"的唯一选择是创建交替的行颜色:

I believe that the only option to make it more "user-friendly" is to create alternating row colors:

tree.insert("", "end", values=("a",),)
tree.insert("", "end", values=("b",), tag='gray')
tree.insert("", "end", values=("c",),)
tree.insert("", "end", values=("d",), tag='gray')
tree.tag_configure('gray', background='#cccccc')

这篇关于在 tkinter 树视图中创建网格线的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆