我在python3.9空闲上用tkinter做的第一个小GUI没有关闭。我的代码是:
import tkinter, sys
def ende():
sys.exit(0)
window = tkinter.Tk()
anzeige = tkinter.Label(window, text = "Guten Tag")
knopf = tkinter.Button(window, text = "Ende", command = ende)
anzeige.pack()
knopf.pack()
window.mainloop()
打开一个带有"Ende“按钮的小GUI,当我单击它时什么也不会发生,即使我在单击它时定义了一个函数...为什么会这样呢?谢谢你的帮忙
发布于 2020-12-13 23:30:56
假设您的代码是用tktest.py
编写的。使用python tktest.py
从命令行运行它。此时将显示GUI。单击Ende
,命令行提示符将重新出现。
用python -i tktest.py
再运行一次。-i
会说“当程序停止时,切换到交互模式,并给我一个python '>>>‘提示符,这样我就可以探索程序的状态了”。单击Ende
,将显示SystemExit
的回溯,后跟>>>
提示符。图形用户界面仍然存在,您可以输入dir()
和其他Python语句。再次单击Ende
,这一次python退出。命令行提示符会重新出现。
当您使用F5从空闲编辑器中运行代码时,它会模拟使用-i
运行。出现重新启动行和GUI。单击Ende
时,将显示>>>
。这不是“什么都没发生”。IDLE抑制SystemExit回溯。按Ende
,将出现另一个>>>
提示符,而不是空闲退出。这一切都是为了方便用户而设计的。
单击标题栏X将关闭gui。另一个用户已经回答了关闭或退出按钮的问题。
https://stackoverflow.com/questions/65278862
复制相似问题