如何使用Tkinter向表格中添加文件名及对应格式数据
实现思路
你只需要在原有的文件遍历逻辑里补充两个小步骤即可完成联动:
- 提取每个文件的后缀,生成你需要的格式描述文本
- 每遍历到一个文件,直接调用表格的行插入方法,把文件名和格式描述一起插入表格
可直接复用的修改方案
我默认你用的是Tkinter生态最常用的ttk.Treeview组件做表格,完整的联动参考代码如下:
import os import glob import tkinter as tk from tkinter import ttk # 初始化主窗口 root = tk.Tk() root.title("文件格式列表") # 创建表格,定义两列 table = ttk.Treeview(root, columns=("file_name", "file_format"), show="headings") # 设置表头文本 table.heading("file_name", text="File Name") table.heading("file_format", text="File Format") # 调整列宽 table.column("file_name", width=200) table.column("file_format", width=150) table.pack(padx=10, pady=10) def browse(): os.chdir("/home/amel/Downloads/Corona") for file in glob.glob("*.*"): # 提取文件后缀,小写处理避免大小写识别问题 suffix = os.path.splitext(file)[-1].lower().strip('.') # 生成第二列的格式描述 format_desc = f"a {suffix} file" # 插入到表格最后一行,替换你原代码里的tx.insert逻辑即可 table.insert("", tk.END, values=(file, format_desc)) # 触发文件加载的按钮,你可以根据自己的布局调整 browse_btn = tk.Button(root, text="加载文件夹文件", command=browse) browse_btn.pack(pady=5) root.mainloop()
关键修改说明
- 你原有代码里的
tx.insert是往文本框插入内容,替换成对应表格组件的行插入方法就完成了联动 - 用
os.path.splitext提取文件后缀,不需要自己写字符串切割逻辑,兼容性更高 - 如果你用的是其他第三方Tkinter表格组件,只要把
table.insert那行替换成对应组件的行插入方法即可
内容的提问来源于stack exchange,提问作者Amel Hadfi
相关产品推荐
相关产品推荐

