簡體   English   中英

在Tkinter中打開新窗口將凍結程序(python 3.6)

[英]Opening new window in Tkinter freezes the program (python 3.6)

我有這樣的事情:

第一.py

from tkinter import *

def new_window(event):
    root.destroy()
    import second

root = Tk()
b = Button(root, text='New window')
b.pack()
b.bind('<Button-1>', new_window)
root.mainloop()

第二個

from tkinter import *
root = Tk()
root.mainloop()

但是,當我打開第二個窗口時,第一個窗口被破壞了(我希望如此),但是第二個窗口卻被凍結了(顯示了出來,但是頂部沒有關閉按鈕,我只看到了啟動圖標)。 為什么會這樣呢? 我不殺死第一個循環嗎?

之所以可能出現此問題,是因為import second永遠不會返回,因為它所做的最后一件事情是調用root.mainloop() 由於它永遠不會返回,因此第一個窗口中的回調永遠不會完成。 而且由於它永遠不會完成,因此無法處理任何其他事件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM