如何在Python中使用tkinter选择目录并存储位置

时间:2012-07-02 14:42:03

标签: python button tkinter directory python-2.x

我正在创建一个带有浏览按钮的GUI,我只想返回路径。我一直在寻找使用如下代码的解决方案。

Tkinter.Button(subframe, text = "Browse", command = self.loadtemplate, width = 10).pack()

   def loadtemplate(self): 
        filename = tkFileDialog.askopenfilename(filetypes = (("Template files", "*.tplate")
                                                             ,("HTML files", "*.html;*.htm")
                                                             ,("All files", "*.*") ))
        if filename: 
            try: 
                self.settings["template"].set(filename)
            except: 
                tkMessageBox.showerror("Open Source File", "Failed to read file \n'%s'"%filename)

但是我知道Tkinter有一个内置的askopenfilename,这是一个非常简单的一行代码来打开文件。有没有办法修改它来返回目录而不是文件?是否有比我发布的更大代码块更小的选项?

2 个答案:

答案 0 :(得分:62)

似乎tkFileDialog.askdirectory应该有效。 documentation

答案 1 :(得分:6)

此代码可能对您有所帮助。

from tkinter import filedialog
from tkinter import *
root = Tk()
root.withdraw()
folder_selected = filedialog.askdirectory()