Я создаю небольшой gui с кнопкой обзора, на которой пользователь должен щелкнуть, чтобы открыть диалоговое окно выбора каталога. После того, как пользователь выбрал каталог, я хочу отобразить выбранный путь на gui в виде простого текста.
Как мне это сделать? Если я добавлю
txt_path = tk.Label(master=root,textvariable=path)
txt_path.grid(row=1, column=0)
в функцию browse_button, текст с выбранным каталогом не появится, будет работать только печать.
Если я поставлю
txt_path = tk.Label(master=root,textvariable=path)
txt_path.grid(row=1, column=0)
за пределами функции browse_button появляется ошибка:
txt_path = tk.Label (master = root, textvariable = path) NameError: имя 'path' не определено
поскольку переменная пути еще не определена, является ли правильный способ сделать переменную пути глобальной? Мой код:
from tkinter import filedialog
import tkinter as tk
def browse_button():
path = filedialog.askdirectory()
if len(path) > 0:
print('OK: ' + path)
# txt_path = tk.Label(master=root,textvariable=path)
# txt_path.grid(row=1, column=0)
else:
print('ERROR')
###########################################################
# GUI
root = tk.Tk()
root.geometry("650x400")
btn_Browse = tk.Button(text="Browse", command=browse_button)
btn_Browse.grid(row=0, column=0)
txt_path = tk.Label(master=root,textvariable=path)
txt_path.grid(row=1, column=0)
root.mainloop()