Tkinter 停止程序执行按钮

问题描述

我正在尝试使用 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")

希望你有这个。 如果满意请打勾