学习笔记(57):Python实战编程-Treeview

本文介绍了Python编程中使用Treeview实现树状结构数据列表的方法,包括创建树状列表、设置列标题和布局、插入数据以及绑定事件处理。通过学习,你可以掌握在Python界面设计中展示数据的技巧。

立即学习:https://edu.csdn.net/course/play/19711/343120?utm_source=blogtoedu

1.树状结构Treeview:分为树状折叠式列表和列表显示,是一种很重要数据列表展示的形式

 

2.树状列表建立步骤:

1)创建一个树状列表:在这里可以设置显示的窗体和列的名称

        self.treeview = tkinter.ttk.Treeview(self.root,#树状结构需要显示的窗体
                                             columns = ("mid","name"),#设置树状列表中列的名称,将所有列名称用一个元组表示
                                             )

2)设置列表中的列的标题

self.treeview.heading(column = "mid",text = "编号")

3)设置列表中列的布局

self.treeview.column("mid",width = 100,anchor = "w")

4)向列表中插入父级数据

        self.level_a = self.treeview.insert(parent = "",#指定父级数据
                                      index = "end",#设置添加的位置,这里设置的是在当前数据的后面进行添加
                                      text = "第一个父级数据",#设置一条数据的标题,可以理解为是行标题
                                      values = ("父级1列1","父级1列2") #为每一条数据中对应的列设置相应的值,用元组表示
                                      )

5)在父级数据下插入子级数据

        self.level_a1 = self.treeview.insert(parent = self.level_a,#指定父级数据
                                      index = "end",#设置添加的位置,这里设置的是在当前数据的后面进行添加
                                      text = "第一条子级数据",#设置一条数据的标题,可以理解为是行标题
                                      values = ("父1子1列1","父1子1列2") #为每一条数据中对应的列设置相应的值,用元组表示
                                      )

6)树状结构列表的显示

self.treeview.pack(anchor = "w",fill = "x")#树状列表的显示,并且使其在x轴方向进行填充

 

3.其他的用法

1)树状结构列表事件的绑定

self.treeview.bind("<Double-Button-1>",self.treeview_handle)

2)事件的定义(包含如何获得列表数据)

    def treeview_handle(self,event):
        for index in self.treeview.selection():#获得选中项的索引,返回一个列表或者元组,因此相应for循环取出
            values= self.treeview.
2025-08-01 13:14:20,582 - ExcelControlPanel - INFO - 初始化Excel控制面板 2025-08-01 13:14:20,806 - ExcelControlPanel - DEBUG - 更新Treeview列 2025-08-01 13:14:20,807 - ExcelControlPanel - INFO - Excel控制面板初始化完成 2025-08-01 13:14:30,497 - ExcelControlPanel - INFO - 保存配置文件 2025-08-01 13:14:39,338 - ExcelControlPanel - DEBUG - Treeview已清空 2025-08-01 13:14:39,397 - ExcelControlPanel - DEBUG - DataFrame形状: (106, 7) 2025-08-01 13:14:39,398 - ExcelControlPanel - DEBUG - 更新Treeview列 2025-08-01 13:14:39,448 - ExcelControlPanel - DEBUG - 添加行 1: ID=nan, 描述=if, while, do..while... 2025-08-01 13:14:39,469 - ExcelControlPanel - DEBUG - 添加行 19: ID=nan, 描述=不要使用ASCII以外的文字。禁止使用日... 2025-08-01 13:14:39,501 - ExcelControlPanel - DEBUG - 添加行 45: ID=nan, 描述=一元操作符如“!”、“~”、“++”、“... 2025-08-01 13:14:39,504 - ExcelControlPanel - DEBUG - 添加行 49: ID=nan, 描述=不能使用??= ,??( ,??/ ,?... 2025-08-01 13:14:39,597 - ExcelControlPanel - DEBUG - 添加行 57: ID=nan, 描述=参数使用前判断参数有效性... 2025-08-01 13:14:39,637 - ExcelControlPanel - DEBUG - 添加行 96: ID=nan, 描述=不要使用#undef。... 2025-08-01 13:14:39,752 - ExcelControlPanel - INFO - 成功添加 106 行到Treeview 2025-08-01 13:16:23,038 - ExcelControlPanel - DEBUG - Treeview已清空 2025-08-01 13:16:23,079 - ExcelControlPanel - DEBUG - DataFrame形状: (106, 7) 2025-08-01 13:16:23,081 - ExcelControlPanel - DEBUG - 更新Treeview列 2025-08-01 13:16:23,104 - ExcelControlPanel - DEBUG - 添加行 1: ID=nan, 描述=if, while, do..while... 2025-08-01 13:16:23,127 - ExcelControlPanel - DEBUG - 添加行 19: ID=nan, 描述=不要使用ASCII以外的文字。禁止使用日... 2025-08-01 13:16:23,177 - ExcelControlPanel - DEBUG - 添加行 45: ID=nan, 描述=一元操作符如“!”、“~”、“++”、“... 2025-08-01 13:16:23,180 - ExcelControlPanel - DEBUG - 添加行 49: ID=nan, 描述=不能使用??= ,??( ,??/ ,?... 2025-08-01 13:16:23,251 - ExcelControlPanel - DEBUG - 添加行 57: ID=nan, 描述=参数使用前判断参数有效性... 2025-08-01 13:16:23,294 - ExcelControlPanel - DEBUG - 添加行 96: ID=nan, 描述=不要使用#undef。... 2025-08-01 13:16:23,401 - ExcelControlPanel - INFO - 成功添加 106 行到Treeview 这是日志文件里的内容,但是界面上还是没有显示任何内容,请解决,如果需要更加详细的日志,请告诉我在合适的位置添加日志
08-02
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有情怀的机械男

你的鼓励将是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值