Python 文件管理器,Treeview,Scrollbar,
来源:互联网 发布:java定义string数组 编辑:程序博客网 时间:2024/05/19 16:50
import tkinterimport tkinter.ttkimport osclass TreeWindows: def __init__(self): self.win=tkinter.Tk() self.tree=tkinter.ttk.Treeview(self.win,height=500) #树状 self.ysb=tkinter.ttk.Scrollbar(self.win,orient="vertical",command=self.tree.yview()) #y滚动条 self.xsb = tkinter.ttk.Scrollbar(self.win, orient="horizontal",command=self.tree.xview()) #x滚动条 self.tree.configure(yscroll=self.ysb.set,xscroll=self.xsb.set) #y滚动条关联 self.tree.grid(row=0,column=0) self.tree.heading("#0",text="Path",anchor="w") #初始化头部,表头 west靠近西方 self.tree.bind("<<TreeviewSelect>>",self.gosel) #事件(选中)绑定 filepath="C:\\aa\\Desktop" #路径 root=self.tree.insert("","end",text=filepath,open=True) #插入一个节点 self.loadtree(root,filepath) #递归 self.e=tkinter.StringVar() self.entry=tkinter.Entry(self.win,textvariable=self.e) self.e.set("请选择文件") self.entry.grid(row=0, column=2) self.ysb.grid(row=0,column=1,sticky="ns") self.xsb.grid(row=1, column=0,sticky="ew") self.win.grid() #表格展示 def loadtree(self,parent,rootpath): for path in os.listdir(rootpath): #遍历当前目录 abspath=os.path.join(rootpath,path) #连接成绝对路径 oid=self.tree.insert(parent,'end',text=abspath,open=False)#插入树枝 if os.path.isdir(abspath): self.loadtree(oid,abspath) #递归回去 def gosel(self,event): self.select=event.widget.selection() #获取所选的项(可能是多项,所以要for循环) for idx in self.select: print(self.tree.item(idx)["text"]) self.e.set(self.tree.item(idx)["text"]) def show(self): self.win.mainloop()mytree=TreeWindows()mytree.show()
阅读全文
0 0
- Python 文件管理器,Treeview,Scrollbar,
- tcltk创建scrollbar在treeview中
- Python Tkinter Scrollbar控件
- 资料管理器,Treeview,递归
- ScrollBar
- scrollbar
- ScrollBar
- ScrollBar
- SCROLLBAR
- ScrollBar
- 文件管理器
- 文件管理器
- 文件管理器
- 文件管理器
- 文件管理器
- python GUI编程——Scrollbar&&Listbox
- treeview绑定硬盘数据文件
- treeview绑定硬盘数据文件
- 机器学习笔记七
- 手误删了照片不用怕!手把手教你恢复手机删除的照片
- Vue--过滤器
- 迅雷创始人程浩:AI 创业必知 6 大核心问题:如何选择赛道、搭配团队和应对巨头挑战
- Introduction to HP ProCurve 2910al Switch Series
- Python 文件管理器,Treeview,Scrollbar,
- spring配置websocket并实现群发/单独发送消息
- 运营商MCC,MNC大全
- gulp构建项目之引入zeptojs
- 钱仓 最大字段和+贪心+模拟
- mysql中替代oracle中nvl()函数的ifnull()函数
- java.net包的DatagramSocket和DatagramPacket
- 如何在 Azure 中的经典 Windows 虚拟机上设置终结点
- 如何统计Activity启动所用的时间?