0

在某些操作系统中,当您制作一个 tkinter 窗口并将其放入 mainloop,并制作一个退出按钮并将其转换为 exe(使用 pyinstaller)时,如下所示:

from tkinter import *

def exit_():
    window.destroy()
    exit()

window = Tk()
text = Label(window, text = "Hello World")
text.pack()
window.protocol('WM_DELETE_WINDOW', exit_)
window.mainloop()

如果您使用内置的 exit() 命令,则有时窗口不会关闭。

有答案吗?

4

1 回答 1

0

是的,有一个答案。不要在 tkinter exe 中使用 exit()。为此使用 sys.exit() python 中的内置模块。

完整代码:

from tkinter import *
from sys import exit as sexit

def exit_():
    window.destroy()
    sexit()

window = Tk()
text = Label(window, text = "Hello World")
text.pack()
window.protocol('WM_DELETE_WINDOW', exit_)
window.mainloop()
于 2020-06-27T10:22:46.700 回答