Как я могу вернуть параметр после использования кнопки в tkinter?

#python #excel #pandas #tkinter #button

#python #excel #панды #tkinter #кнопка

Вопрос:

Как я могу вернуть параметр после использования кнопки в tkinter?

 def read(excelfile):
data = pd.ExcelFile("rsc/"   excelfile   ".xlsx")
file = pd.read_excel(data)
return file

browse_btn = tk.Button(root, text="Browse", command=lambda:read(), bg="#20bebe", fg="white", width=15, height=2)
 

Он не будет продолжать работать в функции def read() .

Комментарии:

1. Вы не можете вернуться из команд кнопок tkinter

2. Зачем вам это вообще нужно?

Ответ №1:

Вы можете передать параметр в своей lambda функции

 brows_btn = tk.Button(
    root, text="Browse", 
    command=lambda x:read(x), 
    bg="#20bebe", fg="white", 
    width=15, height=2)
 

Где x может быть определенная переменная перед созданием кнопки.
Например, параметр, выбранный пользователем, или что-то, что вы определили ранее.
Я думаю, вы также можете определить его непосредственно в своей лямбда-функции с помощью:

lambda x=your_variable:read(x)

Если параметр является входным значением, вы можете заменить x на your_entry.get()

 brows_btn = tk.Button(
    root, text="Browse", 
    command=lambda:read(your_entry.get()), 
    bg="#20bebe", fg="white", 
    width=15, height=2)