==============
推荐教材:董付国编著.Python程序设计(第4版·微课版·在线学习软件版),ISBN:978-7-302-66379-9,清华大学出版社,2024年6月出版,2026年1月第6次印刷(本书前3版印刷34次),定价69.8元,山东省普通高等教育一流教材,国家级特色专业、国家级一流本科专业“计算机科学与技术”配套教材,山东省一流本科课程“Python应用开发”配套教材,清华大学出版社畅销教材



图书内容:154个例题、140节微课视频(含课程思政),内容涉及Python基础、Office文件操作、GUI、图像处理、计算机图形学、音视频处理、数据分析与科学计算可视化、密码学、数据库、网络编程、多线程与多进程、逆向工程、Windows系统编程与安卓编程等领域。
页数:372
适用专业:计算机类所有专业
适用层次:研究生/本科/专科
配套资源:教学大纲、电子教案、课件、源码、数据文件、习题答案、题库,在线练习软件,支持课程思政,支持工程教育认证
适用学时:64/96/128
Treeview组件用于显示层级数据或表格化数据,每个条目具有一个文本标签、一个可选的图像和一个可选的数据值列表,数据值在标签后面以连续列的形式显示。每个条目通过唯一名字标识,如果调用者没有指定ID则自动生成,可以通过列标识符(字符串名称、整数序号n或字符串'#n')访问每个条目。根条目有且只有一个,名为'',树的根条目不显示,根条目的子条目显示为顶层节点。
该组件支持的选项有class、columns、cursor、displaycolumns、height、padding、selectmode、show、style、takefocus、xscrollcommand、yscrollcommand,其中columns指定包含全部列标识符的列表以确定列的数量和名字,displaycolumns指定包含若干列标识符(名字或整数索引)的列表以确定显示哪些列以及以什么顺序显示(默认值'#all'表示以原始顺序显示所有列),height指定可见条目的数量,selectmode指定选择模式(默认值'extended'表示可以多选,'browse'表示只能单选,'none'表示选择不能改变。程序代码和标签绑定可以设置选择,此时与该选项的值无关),show指定包含零个或包含'tree'(表示在#0列显示树标签)或'headings'(表示显示表头行)的字符串以确定显示哪些元素(默认值'tree headings'表示显示所有元素,另外,#0列总是表示树列,即使show属性中不包含'tree'也是如此)。
Item对象支持的选项有text、image、values、open、tags,其中text指定文本标签,image指定在标签左侧显示的Tk图像,values指定条目的值(数量与columns的长度相同,少于时认为剩余值为空值,多于时自动丢弃多余的值),open指定当前条目的子条目是显示(True)还是隐藏(False),tags指定绑定的一个或多个标签用以绑定事件处理函数或控制外观。Tag对象支持的选项有background、font、foreground、image(条目的image选项为空时当前选项有效)。
使用ttk.Style为Treeview组件设置样式时,其类名为Treeview,支持的动态状态有'disabled'、'selected',支持的选项有background、fieldbackground、font、foreground、indent、rowheight。表头的类名为Heading,支持的选项有background、foreground、font、relief。条目的类名为Item,支持的选项有foreground、indicatormargins、indicatorsize、padding。单元格的类名为Cell,支持的选项有padding。
该组件中选择项发生改变时触发虚拟事件<<TreeviewSelect>>,设置拥有焦点的条目的选项open为True之前的瞬间触发虚拟事件<<TreeviewOpen>>,设置拥有焦点的条目的选项open为False之后的瞬间触发虚拟事件<<TreeviewClose>>。
除了从基类ttk.Widget、tkinter.Widget、tkinter.BaseWidget、tkinter.Misc、tkinter.Pack、tkinter.Place、tkinter.Grid、tkinter.XView、tkinter.YView继承了大量方法之外,该组件自定义方法如下表所示。
方法 | 功能 |
bbox(item, column=None) | 返回指定条目的包围盒,形式为(x,y,width,height),指定column时返回该列的包围盒,item不可见时返回空字符串 |
column(column, option=None, **kw) | 查询或修改指定列('#0'表示树的列)的选项值,支持的选项有id(只读)、anchor、minwidth、stretch(值为True或False,指定组件缩放时是否调整列的宽度)、width |
delete(*items) | 删除指定的条目及其后代条目,不能删除根条目 |
detach(*items) | 取消关联指定的条目,可以再次插入到树中但不可再显示,根条目不能取消关联 |
exists(item) | 测试指定的条目是否在树中 |
focus(item=None) | 返回当前焦点的条目(没有条目拥有焦点时返回空字符串)或设置指定的条目拥有焦点 |
get_children(item=None) | 返回属于指定条目的子条目,不指定参数时返回根条目的子条目 |
heading(column, option=None, **kw) | 返回或设置指定列的选项(例如text、image、anchor、command) |
identify(component, x, y) | 返回位置(x,y)下面的组件组成部分的描述信息,不存在时返回空字符串 |
identify_column(x) | 返回位置x的单元格的数据列标识符 |
identify_element(x, y) | 返回位置(x,y)的元素,Tk 8.6新增 |
identify_region(x, y) | 返回位置(x,y)的元素,值为'heading'、'separator'、'tree'或'cell'之一,Tk 8.6新增 |
identify_row(y) | 返回位置y的条目的ID |
index(item) | 返回指定条目在所在父条目中的整数索引 |
insert(parent, index, iid=None, **kw) | 在指定父条目中创建新条目并返回新条目的ID,参数parent为空字符串时创建顶层条目;参数index表示插入位置,小于或等于0时在最开始处插入,大于或等于子条目数量时在最后插入;参数iid表示子条目的ID(要求在树中不存在),不指定时生成新的ID |
item(item, option=None, **kw) | 返回或设置指定条目的选项 |
move(item, parent, index) reattach(item, parent, index) | 移动指定条目到指定父条目中的指定位置。不能把条目移动至其自身的子条目下,如果条目已经取消关联则会重新关联 |
next(item) | 返回指定条目的下一个兄弟条目,如果参数item为最后一个条目则返回空字符串 |
parent(item) | 返回指定条目的父条目,如果参数item为顶层条目则返回空字符串 |
prev(item) | 返回指定条目的上一个兄弟条目,如果参数item为第一个条目则返回空字符串 |
see(item) | 使得指定条目可见,使其所有上级条目的选项open值为True,必要时滚动组件 |
selection() | 返回包含所有已选择条目的元组 |
selection_add(*items) | 增加指定条目到当前选择中 |
selection_remove(*items) | 在当前选择中删除指定的条目 |
selection_set(*items) | 设置指定的条目为新的选择 |
selection_toggle(*items) | 切换指定条目的选择状态,选中变为非选中,非选中变为选中 |
set(item, column=None, value=None) | 返回或设置指定条目指定列的值 |
set_children(item, *newchildren) | 替换指定条目的子条目 |
tag_bind(tagname, sequence=None, callback=None) | 为指定标签绑定新的事件处理函数 |
tag_configure(tagname, option=None, **kw) | 返回或设置指定标签对应条目的选项值 |
tag_has(tagname, item=None) | 测试指定条目是否具有指定的标签,不指定参数item时返回所有具有指定标签的条目 |

=================