python 为什么这里有两扇Windows开着?

1bqhqjot  于 2023-01-29  发布在  Python
关注(0)|答案(1)|浏览(145)

我正在编写一个应用程序,我想关闭一个窗口,并通过按钮打开另一个窗口。然而:

from tkinter import *

x1 = Tk()
x2 = Tk()

def xd():
    x1.destroy()
    x2.mainloop()

boton = Button(x1, text="XD", command=xd)
boton.pack()

x1.mainloop()

这将打开两个窗口,x1和x2。我已经知道,如果我在函数xd()中使用x2 = Tk(),它将按照我想要的方式工作。但我的问题仍然是相同的。x2 = Tk()应该只创建一个窗口名称变量,而mainloop应该在视觉上创建它。那么,为什么会发生这种情况呢?

sqxo8psd

sqxo8psd1#

一个对mainloop的调用就可以使两个窗口都可见,这就是tkinter的工作原理,因为你创建了两个窗口,所以你会看到两个窗口。

相关问题