【问题标题】:How do I destroy a Tk window after opening another with a function?使用函数打开另一个 Tk 窗口后,如何销毁 Tk 窗口?
【发布时间】:2019-04-07 06:49:36
【问题描述】:

在用户按下登录按钮后,我试图用不同的 GUI 打开一个全新的文件,但是当他们点击它时,我似乎无法破坏 Tk 主窗口。

    def __init__(self, master=None): #This is how I initialized the TK window
        tkinter.Tk.__init__(self,master)
        m_login = tkinter.Button(text="Login",bg="#1e1e1e",foreground="#b4b4b4",width=10,command=self.login)
    def login(self):
        os.startfile('maingui.py')
        self.tkinter.destroy() #Idk what goes here

【问题讨论】:

  • 使用self.destroy()
  • os.startfile('maingui.py') 可能适用于您的计算机,但可能不适用于其他计算机 - 即。用户可能没有将 .py 分配给 Python,os.startfile 在 Linux 上不存在。我宁愿import maingui 并从此文件运行类/函数。

标签: python user-interface tkinter


【解决方案1】:
self.destroy

在大多数情况下都有效,但我发现导入类和函数然后关闭第一个似乎效果最好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多