Как получить переменную из функции без использования () - PullRequest
0 голосов
/ 10 марта 2020

Я пытаюсь разработать GUI для простой программы, которую я сделал, для этого мне нужно попросить папку, которая будет проанализирована, и я хочу напечатать направление выбранной папки, но когда я вызываю переменную direccion, она не появляется.

И, в принципе, все, что я хочу, это напечатать направление на этикетке, называемой Entry, извините за это имя, но я попытался сделать это Entry, и в этом распечатать направление, но я думаю, что это сложнее. Спасибо.

Вот что у меня есть:

#Importados
from tkinter import *
from tkinter import filedialog

#Root
root = Tk()
root.title('INTERFAZ COMPOSICION DE BANDAS')
root.iconbitmap('ICON.ico')
root.config(bg='gray')
root.resizable(1,1)

#Frame
frame=Frame(root,width=480,height=320)
frame.config(cursor="arrow")
frame.pack(side='top')


#Label
Labeltitulo = Label(frame,text='Composicion de bandas')
Labeltitulo.grid(row=0,column=1)

#Buscador Directorio
imagen=PhotoImage(file=r'C:\Users\57314\Documents\AUTOMATING\COMP_RGB\folder.png')
pic=imagen.subsample('3','3')
def buscador():
    global direccion
    direccion = filedialog.askdirectory(parent=root,title='Escoge carpeta a analizar')
    print (direccion)
    return direccion

BotonFolder = Button(frame,text='Click me',image=pic,command=buscador).grid(row=1,column=0)


Labeldirectorio=Label(frame,text='Ingresa directorio')
Labeldirectorio.grid(row=3,column=0)


#Pasting directorio
dasasas = buscador
entry = Label(frame,text=dasasas)
entry.grid(row=1,column=1)


root.mainloop()

1 Ответ

0 голосов
/ 10 марта 2020

Вот сокращенная версия вашего кода, в которой убраны все несущественные части вашего вопроса.

Вам не нужно добавлять что-то в глобальный объект, если вы обновляете метку в глобальном пространстве имен.

Просто настройте текст меток.

import tkinter as tk
from tkinter import filedialog


def buscador():
    direccion = filedialog.askdirectory(parent=root, title='Escoge carpeta a analizar')
    path_lbl.config(text=direccion)


root = tk.Tk()
frame = tk.Frame(root, width=480, height=320)
frame.pack(side='top')
tk.Label(frame, text='Composicion de bandas').grid(row=0, column=1)
tk.Button(frame, text='Click me', command=buscador).grid(row=1, column=0)
tk.Label(frame, text='Ingresa directorio').grid(row=3, column=0)
path_lbl = tk.Label(frame, text='Choose a folder to analize')
path_lbl.grid(row=1, column=1)
root.mainloop()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...