Следующий код создает две кнопки: с одной вы добавляете выпадающее меню, в котором вы можете выбирать различные опции, а другая печатает список вариантов. Я попытался сделать это с помощью команды Meton в OptionMenu, и это вроде работает. Проблема в том, что если вы измените свой выбор в любом раскрывающемся меню, он просто добавляет новый выбор, сохраняя предыдущий. Таким образом, вы можете получить бесконечный список, даже если вы добавили только один тест. Есть ли способ создать функцию, которая извлекает тесты, выбранные при нажатии второй кнопки?
import tkinter as tk
def addtkvar(tkvar):
asdf.append(tkvar)
print(asdf)
def addBox():
next_row = len(all_entries)
tkvar = tk.StringVar(root)
choices = {'Peabody', 'Matrices de Raven', 'Teach atención selectiva', 'Caras6', 'RAN/RAS', 'SBM repetición', 'TALE II'}
tkvar.set('Select a test')
popupMenu = tk.OptionMenu(mainframe, tkvar, *choices,command=addtkvar)
popupMenu.grid(row = next_row, column = 0)
all_entries.append(1)
def check():
print(asdf)
root = tk.Tk()
mainframe = tk.Frame(root)
mainframe.pack()
asdf = []
tkvar = tk.StringVar(root)
choices = {'Peabody', 'Matrices de Raven', 'Teach atención selectiva', 'Caras6', 'RAN/RAS', 'SBM repetición', 'TALE II'}
all_entries = [1, 2, 3, 4, 5, 6]
addboxButton = tk.Button(mainframe, text='Add test', command=addBox)
addboxButton.grid(row=28, column = 0)
addboxButton2 = tk.Button(mainframe, text='Check', command=check)
addboxButton2.grid(row=29, column = 0)
root.mainloop()
Заранее спасибо!