我试图在单击按钮一定次数并选择两个单选按钮之一后关闭窗口。目前,这是我的代码(至少适用):
from tkinter import *
slide=1
window2=Tk()
window2.title("Select Game Length")
window2.geometry('1600x800+0+0')
def next_slide_window2():
global slide
slide += 1
if slide==1:
window2_bg.config(image=intro1)
elif slide==2:
window2_bg.config(image=intro2)
elif slide==3:
window2_bg.config(image=intro3)
game_length_select_btn1.place(x=390, y=350)
game_length_select_btn2.place(x=790, y=350)
elif slide>=4 and game_length.get != 0:
window2.destroy()
best_of_3 = PhotoImage(file="bestof3.png")
best_of_5 = PhotoImage(file="bestof5.png")
intro1 = PhotoImage(file="window2_intro1.png")
intro2 = PhotoImage(file="window2_intro2.png")
intro3 = PhotoImage(file="window2_intro3.png")
next = PhotoImage(file="next.png")
window2_bg=Label(window2,image=intro1)
window2_bg.place(y=50, x=500) #at school, 50, 690; at home, 50, 500
next_button=Button(window2, image=next, command=next_slide_window2)
next_button.place(y=650, x=700) #at school, 800, 900; at home 650, 700
game_length=IntVar()
game_length.set(0)
game_length_select_btn1= Radiobutton(window2, image=best_of_3,
variable=game_length, value=3, command=game_length_select)
game_length_select_btn2= Radiobutton(window2, image=best_of_5,
variable=game_length, value=5, command=game_length_select)
window2.mainloop()
第四次按下下一个按钮后,无论是否选中一个单选按钮,它都会破坏窗口。仅当其中之一发生时,才应该发生这种情况。怎么了?
答案 0 :(得分:1)
这是因为您在get
函数内部进行比较时使用了变量的game_length.get
函数引用next_slide_window2()
。
将game_length.get
更改为game_length.get()
,以便使用game_length
变量的值。