如何创建一个关闭一个tkinter窗口并打开另一个窗口的按钮?

时间:2018-03-26 00:35:22

标签: python tkinter

当我创建一个关闭当前窗口并打开另一个窗口的按钮时,当前窗口不会关闭

from tkinter import *

root = Tk()

def new_window():
    root.quit()
    new_window = Tk()
    new_window.mainloop()

Button(root, text="Create new window", command=new_window).pack()

root.mainloop()

(这不是我的程序,只是一个例子)

1 个答案:

答案 0 :(得分:1)

你应该能够这样做:

import tkinter as tk

root = tk.Tk()

def new_window():
    root = tk.Tk()
    test = tk.Button(root, text="Create new window", command= lambda:[root.destroy(), new_window()]).pack()

    root.mainloop()

test = tk.Button(root, text="Create new window", command= lambda:[root.destroy(), new_window()]).pack()

root.mainloop()

这将使用按钮完全打开完全相同的窗口。 lambda允许您调用多个函数。通过在根窗口上调用.destroy(),它会破坏您的窗口,但不会停止该程序。然后使用您的函数创建一个新的根窗口。

您可以在实际脚本上使用此技术。