问题描述
我正在尝试使用 Tkinter GUI 构建一个简单的游戏。游戏的第一部分是询问是否想玩。我的 Tkinter 如下所示:
window = tk.Tk()
window.rowconfigure(0,minsize=50,weight=1)
window.columnconfigure([0,1,2],weight=1)
lbl_value = tk.Label(master=window,text="Welcome!")
lbl_value.grid(row=0,column=1)
lbl_value = tk.Label(master=window,text="Would you like to play?")
lbl_value.grid(row=1,column=1)
btn_yes = tk.Button(master=window,text="Yes",command=window.destroy)
btn_yes.grid(row=2,column=0,sticky="nsew")
btn_no = tk.Button(master=window,text="No",command=**??**)
btn_no.grid(row=2,column=2,sticky="nsew")
window.mainloop()
“是”按钮按预期运行,并继续执行其余代码。然而,“否”按钮,我不知道如何让它一起退出程序的运行(不仅仅是窗口),或者更好的是,如何让它打开一个额外的窗口,说明“也许下次",然后在退出该窗口时结束程序。
解决方法
创建一个新功能,您可以在其中定义一个新的 tkinter 屏幕,该屏幕将在用户按下 NO 按钮时出现
def no_button_function(): # function that will be called when user pressed no button
new_window = tk.Toplevel(window)
new_window.title('See You Next Time')
# create the good bye message using labels and buttons accordingly
现在将这个函数传递给NO按钮
btn_no = tk.Button(master=window,text="No",command=no_button_function)
btn_no.grid(row=2,column=2,sticky="nsew")
希望你有这个。 如果满意请打勾