首页 > 解决方案 > 在 tkinter 中将文件类型控制为 pdf

问题描述

我想控制 tkinter 文件对话框向用户显示哪些文件。我只希望用户能够看到 pdf 文件,而不是看到所有不同类型的文件,例如 Word 或 txt。

有没有办法在 askopenfilename() 函数中指定文件类型?

标签: python-3.xtkinter

解决方案


它有一个名为 的函数askopenfilename,您可以在参数中传递文件类型。这里有一些简单的例子。

结果可能因您的操作系统而异。我在windows 10上测试过,只能过滤文件夹和pdf文件,可能tkinter不能过滤文件夹。

from tkinter import filedialog
from tkinter import *

FILEOPENOPTIONS = dict(defaultextension=".pdf", initialdir="D://workspace",
                       filetypes=[('pdf file', '*.pdf')])
root = Tk()
root.filename = filedialog.askopenfilename(**FILEOPENOPTIONS)

推荐阅读