treeview控件(treeview控件怎么用)

更新时间:2023-03-01 17:43:36 阅读: 评论:0

上节实现了目录树的基本呈现,不过,这让我很不满意。

第一、我只实现了一层目录的显示。但目录树都是多层的。

第二、我没有对目录树的事件进行处理。比如单出、展开目录树的事件处理。

所以,这一节准备实现目录树的事件处理。

每个控件都有类似的虚拟事件,除了能用的比如<Enter>等事件外,还有控件特有的事件。比如,TreeView控件的事件就有三个,可参考如下链接:

https://docs.python.org/3/library/tkinter.ttk.html#treeview

于是,我在初始化函数中用bind函数来绑定事件的回调函数onSelectDir(), onOpenDir(),onCloDir()。并且我规划一个专门用于展开目录的函数displayDirs(),专门来处理如何展开目录。

一般的事件函数形如:def onSelectDir(lf, event),其中event事件包含如下信息:

比如event.widget表示是哪个控件发送的事件,你还可以利用x,y跟踪鼠标的位置,

以及char、keysym等来用跟踪哪键盘上的键被按下了。

详细可参考:https://docs.python.org/3/library/tkinter.html#bindings-and-events

也可参考:http://effbot.org/tkinterbook/tkinter-events-and-bindings.htm

如下选择事件onSelectDir(),我暂时实现输出选中项的节点功能:

在展开节点事件中,我计划:当展开该节点时,就把其下一级子目录展开:

所以,我暂定义了一个函数displayDirs(),如下:

该函数实现,将指定目录节点下的子目录添加到节点下一级,并且将对于目录的绝对路径保存在节点的tags变量中。

注意:我已经在初始化函数中先插入了根节点,并且调用了此函数(参考第一张图的最后一段代码)。显示的结果如下:

不过,不太漂亮,先把功能实现,美观后续再优化了。

本文发布于:2023-02-28 20:13:00,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/zhishi/a/167766381682039.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:treeview控件(treeview控件怎么用).doc

本文 PDF 下载地址:treeview控件(treeview控件怎么用).pdf

标签:控件   treeview
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 实用文体写作网旗下知识大全大全栏目是一个全百科类宝库! 优秀范文|法律文书|专利查询|