Tim*_*ane 3 python user-interface tkinter
我目前正在使用Tkinter在python中编写GUI,用户可以在其目录中使用扩展名".espace"保存GUI的状态.
filename = tkFileDialog.asksaveasfilename(defaultextension=".espace")
如果用户指定了不同的文件扩展名,则文件将使用他们指定的扩展名保存.反正有没有阻止这个?这样他们完全被限制为使用扩展名".espace"保存文件?
小智 6
您可以使用'filetypes'选项指定文件类型.下面的示例将保存对话框中的文件类型下拉列表更改为.espace和所有文件.
filename = tkFileDialog.asksaveasfilename(defaultextension=".espace", filetypes=(("espace file", "*.espace"),("All Files", "*.*") ))
Run Code Online (Sandbox Code Playgroud)
我没有找到使用asksaveasfilename的选项来限制使用其他文件扩展名.我认为你可以写一个强制用户使用该扩展的循环:
import os
import sys
ext = ""
while ext != ".escape":
filename = tkFileDialog.asksaveasfilename(defaultextension=".espace", filetypes=(("espace file", "*.espace"),("All Files", "*.*") ))
file,ext = os.path.splitext(filename)
Run Code Online (Sandbox Code Playgroud)