tkinter tressview
时间: 2023-07-13 08:25:36 浏览: 70
python tkinter filedialog
Treeview 是 Tkinter 中用于显示树形数据的控件,可以用来展示一个层级结构的数据,如文件目录、网站导航等。
以下是一个简单的 Treeview 示例代码:
```python
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
tree = ttk.Treeview(root)
tree.pack(fill='both', expand=True)
# 添加根节点
tree.insert('', '0', 'root', text='Root')
# 添加子节点
tree.insert('root', '0', 'child1', text='Child 1')
tree.insert('root', '1', 'child2', text='Child 2')
# 添加子节点的子节点
tree.insert('child1', '0', 'grandchild1', text='Grandchild 1')
tree.insert('child1', '1', 'grandchild2', text='Grandchild 2')
root.mainloop()
```
这个例子中,我们创建了一个 Treeview 控件,并添加了一个根节点和两个子节点。其中,`tree.insert()` 方法用于添加节点,接受四个参数:
- 第一个参数是父节点的 ID,如果要添加根节点,则传递空字符串。
- 第二个参数是插入位置,数字越小,插入位置越靠前。
- 第三个参数是节点 ID,用于标识该节点,可以自定义。
- 第四个参数是节点文本,即显示在 Treeview 中的文本。
如果要添加子节点的子节点,只需要将父节点的 ID 改为子节点的 ID 即可。
此外,还可以通过设置 Treeview 的列来显示更多的数据,例如:
```python
tree['columns'] = ('size', 'date')
tree.column('#0', width=200)
tree.column('size', width=50)
tree.column('date', width=100)
tree.heading('#0', text='Name')
tree.heading('size', text='Size')
tree.heading('date', text='Date')
tree.insert('root', '0', 'file1', text='File 1', values=('10 KB', '2022-01-01'))
tree.insert('root', '1', 'file2', text='File 2', values=('20 KB', '2022-01-02'))
```
这个例子中,我们添加了两个列,分别显示文件大小和创建日期。`tree.column()` 方法用于设置列的属性,包括列宽度等。`tree.heading()` 方法用于设置列标题。`tree.insert()` 方法的第五个参数 `values` 用于设置节点的其它属性,需要与列对应。
阅读全文