本文主要是Python tkinter Treeview控件介绍及使用简单示例。
tkinter系列文章
python tkinter窗口简单实现
Python tkinter (1) —— Label标签
Python tkinter (2) —— Button标签
Python tkinter (3) —— Entry标签
Python tkinter (4) —— Text控件
Python tkinter (5) 选项按钮与复选框
Python tkinter (6) ——Listbox
Python tkinter (8) ——Spinbox控件
Python tkinter (9) ——Menu控件
Treeview
TreeView控件可按树形结构来显示分层数据,例如目录或文件目录。
表格数据简单示例
使用ttk库中的treeview控件做一个简单点的用户基本信息表格数据。
示例如下:
import tkinter
from tkinter import ttk
tk = tkinter.Tk()
tk.title('简单示例')
tk.geometry('600x200+200+20')
# 表格
tree = ttk.Treeview(tk)
tree.pack()
tree['columns'] = ('姓名', '性别', '年龄', '身高')
# 设置列 列还未显示
tree.column('姓名', width=100)
tree.column('性别', width=100)
tree.column('年龄', width=100)
tree.column('身高', width=100)
# 设置表头 需要与列名称对应
tree.heading('姓名', text='姓名')
tree.heading('性别', text='性别')
tree.heading('年龄', text='年龄')
tree.heading('身高', text='身高')
# 添加数据
tree.insert('', 0, text='Line1', values=('张三', '男', '18', '180cm'))
tree.insert('', 1, text='Line2', values=('李四', '女', '18', '165cm'))
tree.insert('', 2, text='Line3', values=('赵大', '男', '19', '182cm'))
tk.mainloop()
效果如下:
树状数据示例
还可以使用treeview做树状数据,下面使用中国城市分级示例。
示例如下:
import tkinter
from tkinter import ttk
tk = tkinter.Tk()
tk.title('简单示例')
tk.geometry('400x400+200+20')
tree = ttk.Treeview(tk)
tree.pack()
# 添加一级树枝
treeF1 = tree.insert('', 0, '北京', text='中国北京', values=('F1'))
treeF2 = tree.insert('', 1, '河北', text='中国河北', values=('F2'))
treeF3 = tree.insert('', 2, '广州', text='中国广州', values=('F3'))
# 添加二级树枝
treeF1_1 = tree.insert(treeF1, 0, '东城区', text='北京东城区', values=('F1_1'))
treeF1_2 = tree.insert(treeF1, 1, '西城区', text='北京西城区', values=('F1_2'))
# 另一支二级树枝
treeF2_1 = tree.insert(treeF2, 0, '石家庄', text='河北石家庄', values=('F2_1'))
treeF2_2 = tree.insert(treeF2, 1, '邯郸', text='河北邯郸', values=('F2_2'))
# 三级树枝
treeF2_2_1 = tree.insert(treeF2_2, 0, '永年区', text='河北邯郸永年区', values=('F2_2_1'))
treeF2_2_2 = tree.insert(treeF2_2, 1, '邯山区', text='河北邯郸邯山区', values=('F2_2_2'))
tk.mainloop()
效果如下:
总结
本文主要是Python tkinter Treeview控件介绍及使用简单示例。