Я пытаюсь использовать tkinter для создания базовой c программы. Это не захватывает мой радиокнопочный ввод. Должен отображаться экран с заголовком и следующей кнопкой. Если следующая кнопка нажата, она должна вызвать другое окно с двумя переключателями и следующей кнопкой. Если нажать эту кнопку, появится третий экран с сообщением о том, что вы выбрали. В настоящее время он говорит вам, что вы ничего не выбрали, несмотря ни на что
from tkinter import *
from tkinter import ttk
from functools import partial
def forward():
root2=Tk()
mainframe2=ttk.Frame(root2)
mainframe2.grid(row=0,column=0)
pick=StringVar()
ttk.Radiobutton(mainframe2, text='A', variable=pick, value='A').grid(row=1,column=1)
ttk.Radiobutton(mainframe2, text='B', variable=pick, value='B').grid(row=2,column=1)
#What I have tried
#ttk.Button(mainframe2, text='Next',command=lambda: advance(pick)).grid(row=3,column=1)
ttk.Button(mainframe2, text='Next',command=partial(advance,pick)).grid(row=3,column=1)
#ttk.Button(mainframe2, text='Next',command=advance).grid(row=3,column=1)#if you this and def
advance(args) it says pick is undefined
root2.mainloop()
def advance(pick):
choice=pick.get()
screen3=Tk()
mainframe3=ttk.Frame(screen3)
mainframe3.grid(row=0,column=0)
result=str('You Chose '+choice)
ttk.Label(mainframe3, text=result).grid(row=1,column=1)
screen3.mainloop()
root = Tk()
mainframe=ttk.Frame(root) #create a screen
mainframe.grid(row=0,column=0)
ttk.Label(mainframe, text='Welcome to my Broken Program').grid(row=1,column=1)
ttk.Button(mainframe, text='Next',command=forward).grid(row=2,column=1)
root.mainloop()