python获取 treeview中选中的行,保存到变量
时间: 2024-02-25 07:52:12 浏览: 26
可以使用以下代码获取 `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里的内容保存到txt文件中
可以按照如下的步骤将Treeview里的内容保存到txt文件中:
1. 遍历Treeview,获取所有的内容,并将其存储到一个列表中。
```
data = []
for item in treeview.get_children():
data.append(treeview.item(item)['values'])
```
2. 将列表中的内容写入到txt文件中。
```
with open('data.txt', 'w') as f:
for item in data:
f.write("%s\n" % item)
```
完整代码如下:
```
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
treeview = ttk.Treeview(root)
treeview['columns'] = ('col1', 'col2')
treeview.heading('col1', text='Column 1')
treeview.heading('col2', text='Column 2')
treeview.insert('', 'end', text='Row 1', values=('Value 1', 'Value 2'))
treeview.insert('', 'end', text='Row 2', values=('Value 3', 'Value 4'))
treeview.pack()
data = []
for item in treeview.get_children():
data.append(treeview.item(item)['values'])
with open('data.txt', 'w') as f:
for item in data:
f.write("%s\n" % item)
```
执行完上述代码后,会在当前目录下生成一个名为data.txt的文件,其中包含了Treeview中的内容。
python获取treeview中的值
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
```