你好,我正在使用tkinter在python上工作,我想在销毁Login类中的第一个窗口后运行一个窗口(在Main中),但是问题是代码停止在root.destroy上并且不执行代码的其余部分
我尝试用root.qui()替换root.destroy(),其余代码继续执行,但第一个窗口仍然出现
from tkinter import *
import threading
class Login:
def __init__(self):
self.window=Tk()
self.window.geometry("600x500+50+50")
self.window.resizable(False,False)
self.window.configure(bg="#fafafa")
def start(self):
self.window.mainloop()
def stop(self):
self.window.destroy()
class Main:
def __init__(self):
self.login=Login()
def test(self):
a=input("a : ")
b=input("b : ")
if a ==b:
self.login.stop()
print("window destroyed .....")
test=Main()
threading.Thread(target=test.test).start()
test.login.start()
答案 0 :(得分:0)
最后,我在方法login.stop()中找到了解决该问题的方法
我将指令window.destroy()
替换为window.after(0,window.destroy)