Python Значение переключателя переменной Tkinter Pass для вложенного окна - PullRequest
0 голосов
/ 09 января 2020

Я новичок в tkinter, извиняюсь за грязный код. У меня проблемы с передачей значения моей переменной радиокнопки (selected2) из ​​второго в третье окно.

from tkinter import *

def clicked2():
    global Account_path
    global Account_Text
    global selection2
    global selected2
    global path
    selection2 = selected2.get()
    Account_path = Account_Text.get()
    print(Account_path)
    print("Selected2 Value", selected2.get())
    if selection2 == 10:
        function1(path, Account_path)
    if selection2 == 11:
        function2(path)


def clicked():
    global path
    global selection2
    global selection
    global Account_Text
    path = path_text.get()
    selection = selected.get()
    if selection == 3:
        print("Selection Value", selection)
        Account_path = ""
        cme_win = Tk()
        cme_win.title('CME Parser')
        radl_CME_single = Radiobutton(cme_win, text='Single Account', value=10, variable=selected2)
        radl_CME_single.grid(column=0, row=0)
        radl_CME_all = Radiobutton(cme_win, text='All Accounts', value=11, variable=selected2)
        radl_CME_all.grid(column=0, row=1)
        Label(cme_win, text='Select an Account').grid(column=0, row=3)
        Account_Text = Entry(cme_win)
        Account_Text.grid(row=3, column=1)
        Account_Text.focus()
        cme_button = Button(cme_win, text='Execute', command=clicked2)
        cme_button.grid(row=4, column=1)
        mainloop()


Account_Text = ""
Path = ""
selection = ""
selection2 = ""
master = Tk()
master.title('Spreadsheet Parser')
selected = IntVar()
selected2 = IntVar()
radl_CME = Radiobutton(master, text='CME', value=3, variable=selected)
radl_CME.grid(column=2, row=0)
Label(master, text='File Location').grid(row=3, column=0)
path_text = Entry(master, width=50)
path_text.grid(row=3, column=1)
path_text.focus()
button = Button(master, text='Execute', command=clicked)
button.grid(column=1, row=6)
mainloop() 

Значения от 'radl_CME_single' и 'radl_CME_all' в функции clicked не передаются clicked2. Когда я печатаю значение selected2.get () в clicked2, он возвращает 0. Я ожидаю, что либо 10, либо 11 будут возвращены в зависимости от переменных кнопки Radl. Что я делаю не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...