python获取treeview中的值
时间: 2023-04-13 20:03:26 浏览: 815
Python可以使用treeview的get_children()方法获取treeview中所有子项的ID,然后使用item()方法获取每个子项的值。例如:
```python
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
# 创建treeview
tree = ttk.Treeview(root)
tree.pack()
# 添加子项
tree.insert("", "end", "item1", text="Item 1")
tree.insert("", "end", "item2", text="Item 2")
tree.insert("item1", "end", "subitem1", text="Subitem 1")
tree.insert("item1", "end", "subitem2", text="Subitem 2")
# 获取treeview中的值
for child_id in tree.get_children():
child_value = tree.item(child_id)["text"]
print(child_value)
root.mainloop()
```
输出结果为:
```
Item 1
Item 2
Subitem 1
Subitem 2
```
相关问题
python获取 treeview中选中的行,保存到变量
可以使用以下代码获取 `treeview` 中选中的行,并将其保存到一个变量中:
```python
# 获取选中的行
selected_items = treeview.selection()
# 遍历选中的行,将其保存到一个列表中
selected_rows = []
for item in selected_items:
selected_rows.append(treeview.item(item)['values'])
# 打印选中的行
print(selected_rows)
```
其中,`treeview` 是你使用的 `tkinter` 中的 `Treeview` 对象。`selected_items` 变量保存了所有选中的行的 ID,`selected_rows` 变量保存了所有选中的行的值。你可以根据自己的需要使用这些变量。
python中treeview表格中的内容怎么获取
在Python中,你可以使用tkinter模块提供的相应方法来获取TreeView控件(也称为Treeview表格)中的内容。
首先,你需要获取每个节点的文本值或其它属性值。可以使用TreeView控件中的`item()`方法,该方法接受一个节点的标识符作为参数,并返回一个由该节点的所有值组成的字典。
例如,下面的代码获取了TreeView控件中第一个节点的文本和值:
```python
import tkinter as tk
from tkinter import ttk
# 创建TreeView控件
root = tk.Tk()
tree = ttk.Treeview(root)
# 插入节点
tree.insert("", "0", "item1", text="First Item", values=("1", "2", "3"))
# 获取节点的文本和值
item = tree.item("item1")
text = item['text']
values = item['values']
```
其次,你需要遍历TreeView控件的所有节点,并获取它们的值。可以使用TreeView控件中的`get_children()`方法和`item()`方法来实现。`get_children()`方法接受一个节点的标识符作为参数,返回该节点的所有子节点的标识符组成的列表。`item()`方法在遍历TreeView控件时,可以获取每一个节点的文本和值。
例如,下面的代码遍历TreeView控件的所有节点,并获取它们的文本和值:
```python
# 遍历TreeView控件的所有节点
def traverse_treeview(node):
children = tree.get_children(node)
if len(children) > 0:
for child in children:
traverse_treeview(child)
item = tree.item(node)
text = item['text']
values = item['values']
print(text, values)
# 获取TreeView控件的内容
traverse_treeview("")
```
以上代码会遍历TreeView控件的所有节点,获取它们的文本和值。你也可以根据需要将获取到的内容保存到文件中或者进行其它处理。