將上面代碼修改為這種table_frame = tk.Frame(self.result_text) table = ttk.Treeview(table_frame, columns=header, show='headings') table.pack(side=tk.LEFT, fill=tk.BOTH, expand=True)
时间: 2024-03-23 22:39:31 浏览: 102
code09_tkinter_login.pyw_python_tkinter_notepad.pyw_
如果您想要使用 Treeview 来显示表格,可以将以下代码段:
```
columns1 = next(self.record_sheet.iter_rows(min_row=1, max_row=1, values_only=True))
print(columns1)
# 输出表格列的标题
self.result_text.insert(tk.END, "\t".join(columns1) + "\n")
# 显示第一个工作表的内容
for row in self.record_sheet.iter_rows(min_row=2, values_only=True):
row_values = [str(cell) if cell is not None else "" for cell in row]
if all(not bool(cell) for cell in row_values):
continue
# 输出表格内容
self.result_text.insert(tk.END, "\t".join(row_values) + "\n")
```
改为以下代码:
```
header = next(self.record_sheet.iter_rows(min_row=1, max_row=1, values_only=True))
print(header)
table_frame = tk.Frame(self.result_text)
table_frame.pack(side=tk.LEFT, fill=tk.BOTH, expand=True)
table = ttk.Treeview(table_frame, columns=header, show='headings')
table.pack(side=tk.LEFT, fill=tk.BOTH, expand=True)
# 设置表格列的标题和宽度
for col in header:
table.heading(col, text=col)
table.column(col, width=80, anchor="center")
# 显示第一个工作表的内容
for row in self.record_sheet.iter_rows(min_row=2, values_only=True):
row_values = [str(cell) if cell is not None else "" for cell in row]
if all(not bool(cell) for cell in row_values):
continue
table.insert("", tk.END, values=row_values)
```
这样会创建一个包含 Treeview 的框架 `table_frame`,并将其放置在 `self.result_text` 文本框中。然后,将表格列的标题和宽度设置为 Treeview 中的列,接着遍历所有行并将它们插入到 Treeview 中。最终,您将会得到一个显示表格数据的 Treeview。
阅读全文