Я пытаюсь, чтобы окно Tk выполняло функцию при нажатии кнопки, и оно автоматически закрывалось.Я предполагаю, что мне нужна какая-то функция destroy () внутри функции действия, но я не знаю, как это выразить.
Вот что я пытаюсь сделать
import pandas as pd
from tkinter import *
import numpy as np
from functools import partial
поддельные данные
test = pd.DataFrame(columns = ["id", 'sent', "O1", "O2", "O3", "O4"])
results = []
for i in range(5):
test.loc[i,:] = [i,"this is test "+ str(i), .2, .5, .1, .1]
levels = [["Baby"], ["Dinos"], ["bad"], ["Spoons"]]
###
Это действие, которое я хочу выполнить.Необходимо записать то, что было нажато, а затем удалить окно.Я думаю, что именно здесь должна идти моя функция destroy (), но я не знаю, как это выразить.
def Add_results(option):
results.append(option)
Мой создатель окон
def Window_maker(sent, choices):
root = Tk()
topFrame = Frame(root)
topFrame.pack()
botFrame = Frame(root)
botFrame.pack()
label = Label(topFrame, text =sent)
label.pack()
indi= 0
button1 = Button(botFrame, text = choices[0], command = lambda: Add_results(option = choices[0]))
button1.pack()
button2 = Button(botFrame, text = choices[1], command = lambda: Add_results(option = choices[1]))
button2.pack()
root.mainloop()
return(results)
Реализация
for i in range(test.shape[0]):
index = get_params(test.iloc[i, 2:])
choices = [levels[x] for x in index.values]
pred = Window_maker(test.iloc[i,1], choices)