不同Tkinter窗口中的Int变量仅返回0

时间:2019-05-26 05:34:08

标签: python variables tkinter

我在辅助tkinter窗口(不是root)中有一个复选框,即使选中该窗口也仅返回IntVar 0。在主窗口中这不是问题。

我的代码在主根窗口中运行,选中后,复选框返回1而不是0,但是在单独的tkinter窗口中使用完全相同的代码时,它仅返回0。我在最后什么都没有添加window2.mainloop()。

button_list = []              #create list to hold checkbox values
def done_press():           #what to do when done button pressed
    for x in range(len(data)):
        print(button_list[x].get())
play = Tk()                #second window called play
row=[1,2,3,4,5,6,7,8,9]                             
Label(play, text='Whats on').grid(row=0, column=0, padx=30, pady=20, columnspan=3)
for box in range(len(data)):    #create checkboxes
    button_list.append(IntVar())   #append checkbox list for each selected 
    button = Checkbutton(play, text=data[box], variable=button_list,)  
    button.grid(column=0,row=row[box], pady=5, padx=30)
done = Button(play, text='Done', command=done_press)
done.grid(column=0,row=11, columnspan=2)
play.mainloop()

我目前正在将结果打印到控制台,该控制台的每个复选框仅显示0,而在主窗口中,如果选中该复选框,则将显示1。我没有收到错误消息。

0 个答案:

没有答案