如何解决关闭 tkinter 窗口后的任务
在 tkinter
窗口关闭后,我的程序必须执行一些任务。
当按下'X'按钮时,它应该打印“窗口已关闭,怎么办”???
我的代码是
from tkinter import *
root = Tk()
Label(root,text = "This is for stackoverflow('X' button clicked code)").pack()
root.mainloop()
实际上我正在寻找类似返回值的东西...
解决方法
您可以使用 WM_DELETE_WINDOW
协议来检测根窗口是否关闭。
root.protocol("WM_DELETE_WINDOW",lambda: print ("The window is closed."))
此外,mainloop()
是一种保持 GUI 运行的 while 循环。
你也可以在后面加上print('The window is closed.')
root.mainloop()
print('The window is closed.')
,
尝试在 mainloop()
结束后打印语句。看看@BryanOakley 的评论 -
root.mainloop()
print("The window is closed")
在关闭窗口或主循环结束之前,print 语句不会运行
编辑 - 也许这样的事情会奏效 -
import tkinter as tk
root = tk.Tk()
l = tk.Label(root,text='hiiii')
l.pack()
root.mainloop()
print('The application is closed,new window opening')
win = tk.Tk()
l = tk.Label(win,text='byeee')
l.pack()
win.mainloop()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。