现在我正在使用Tkinter提示用户输入一个文件。在
Tk().withdraw() # keep the root window from appearing
file_path = askopenfilename() # show dialog box and return file path
# check if extension is valid
如果用户选择了错误的文件类型,我会用一个新窗口重新提示他们。在
有没有办法,相反,保持同一个窗口打开,除非所选的文件是有效的?在
所以不是这样:
^{pr2}$我想这样做:
# 1) prompt user to open file
# 2) check if extension is valid while keeping window open
# 3) if not, print error, re-prompting with same window
感谢任何帮助。在
如果希望用户打开特定的文件类型,请使用
filetypes
参数。它接受文件类型定义的列表,您可以将其指定为说明和扩展名:可以将“文件浏览器”窗口设置为仅显示要用户选择的文件类型,但通过选择“类型”下拉框,可以轻松地解决这一问题。但是,您可以在“文件选择”(用户单击“确定”以选择文件并关闭“文件浏览器”窗口)时检查文件扩展名是否是所需的类型之一,如果不简单,请清除“文件路径”变量并再次调用“文件浏览器打开”函数。这样,在选择正确的文件类型之前,他们会被困在选择文件中。但是,这确实存在这样一个问题:可能不知道它们为什么会回到原来的位置,所以在重新打开“文件浏览器”窗口之前,您可能需要添加一个弹出窗口或其他内容,以使其更加用户友好。在
相关问题 更多 >
编程相关推荐