我想使用tkinter创建一个浏览文件夹按钮,并将路径存储到一个变量中.到目前为止,我可以打印路径,但无法将其存储在变量中.你能提出建议吗?

下面我附上我使用的代码.

from tkinter import filedialog
from tkinter import *

def browse_button():
    filename = filedialog.askdirectory()
    print(filename)
    return filename


root = Tk()
v = StringVar()
button2 = Button(text="Browse", command=browse_button).grid(row=0, column=3)

mainloop()

推荐答案

下面是一个将目录路径存储为全局变量并使用它填充标签的示例.

from tkinter import filedialog
from tkinter import *

def browse_button():
    # Allow user to select a directory and store it in global var
    # called folder_path
    global folder_path
    filename = filedialog.askdirectory()
    folder_path.set(filename)
    print(filename)


root = Tk()
folder_path = StringVar()
lbl1 = Label(master=root,textvariable=folder_path)
lbl1.grid(row=0, column=1)
button2 = Button(text="Browse", command=browse_button)
button2.grid(row=0, column=3)

mainloop()

Python-3.x相关问答推荐

如何匹配字母,数字,短划线,逗号,但不是如果没有数字和字母?

将Trio与基于线程的事件侦听器混合使用

如何使用Python将嵌套的XML转换为CSV

以编程方式关闭jupyterlab内核

切片时是否在NumPy ND数组中创建新对象?

在BaseHTTPRequestHandler中填充和返回列表

如何将值映射到具有上限和下限的新列

使用 GEKKO 使用代码解决最佳时间控制问题时出现 IndexError

如何在带有 GUI 的 python 游戏中设置回答时间限制?

运行 pip install -r requirements.txt 时出错

如何使用 Selenium by class_name 从大学橄榄球数据中抓取图像 url 列表

`pyspark mllib` 与 `pyspark ml` 包

使用 Python 解析 JSON 嵌套字典

如何从 Python 3.5 降级到 Python 3.4

virtualenv virtualenvwrapper virtualenv:错误:无法识别的参数:--no-site-packages

使用打印时,用+连接是否比用,分隔更有效?

所有 Python dunder 方法的列表 - 您需要实现哪些方法才能正确代理对象?

如何使用 asyncio 添加连接超时?

Windows 下 Python 3.x 的 OpenCV

首次使用后 zip 变量为空