python TKinter的主窗口运行程序完毕后,怎么让其自动关闭 5

importTkinterimporttkSimpleDialogroot=Tkinter.Tk()definStr11():r=tkSimpleDialog.askin... import Tkinter
import tkSimpleDialog
root=Tkinter.Tk()
def inStr11():
r=tkSimpleDialog.askinteger(1,'input int ')
return r
a=inStr11()
print a
root.mainloop()
运行脚本后,弹出输入框,输入数字后确定,最后输入也正确,但是窗口

依然存在,怎么让程序运行完毕后,改窗口也消失
展开
 我来答
ser0326
2019-12-03 · TA获得超过1.4万个赞
知道答主
回答量:30
采纳率:100%
帮助的人:6994
展开全部

采用的是main函数对主窗口运行程序完毕自动关闭的命令:

from tkinter import *def main():

root = Tk()

b = Button(root, text='退出', command=root.quit)

b.pack()

mainloop()if __name__ == '__main__':

main()

扩展资料:

main函数的应用:

程序执行的起点,main是相对来说的,如同音学理论之主调于泛音,泛音即程序中的除main之外的其他函数,迎合思考方式而生成的而非必定的模式。有主有次,执行起来条清缕析,既可将程序模块化又实现了一个闭合的整体。

模块化程序设计方法是把整个程序划分为若干功能较为单一的程序模块,然后分别予以实现,最后再把所有的程序模块像搭积木一样装配起来。

利用函数可以实现程序的模块化,可以大大地减轻编码工作量。在函数内部或复合语句块内部定义的 auto 类型变量称为局部变量。

局部变量的作用域从该局部变量定义的位置开始到本函数或复合语句结束处。局部变量的生存期较短暂。当局部变量所在的函数被调用时,局部变量内存空间被分配,函数调用结束后,局部变量内存空间被释放。

函数的形参和实参均属于局部变量,调用函数时,形参内存空间被分配。函数调用结束后,形参内存空间被释放。C语言函数参数传递可分为三种情况:简单变量作为函数参数、数组名作为函数参数以及指针作为函数参数。

参考资料来源:百度百科-main函数

爱苏陌染
2020-03-27 · TA获得超过3542个赞
知道答主
回答量:76
采纳率:100%
帮助的人:1.1万
展开全部

采用的是main函数对主窗口运行程序完毕自动关闭的命令:

from tkinter import *def main():

root = Tk()

b = Button(root, text='退出', command=root.quit)

b.pack()

mainloop()if __name__ == '__main__':

main()

扩展资料:

main函数的应用:

程序执行的出发点,main,是相对而言的,正如语音学理论关注的是泛音,泛音是程序中main以外的功能,产生泛音是为了迎合思维方式而不是某种模式。有主次之分,对其实现进行了详细的分析,既可以模块化程序,又可以实现一个封闭的整体。

模块化编程方法是将整个程序划分成几个功能单一的程序模块,然后分别实现,最后,所有程序模块都像积木一样组装起来。

利用函数实现程序的模块化,大大减少了编码工作量,在函数或复合语句块中定义的自动类型变量称为局部变量。

局部变量的作用域从局部变量定义的位置开始,一直到该函数或复合语句的结尾,局部变量存活时间短。调用局部变量的函数时,将分配局部变量的内存空间,函数调用后,释放局部变量的内存空间。

函数参数和参数属于局部变量,调用函数时,将分配参数内存空间,函数调用后,参数内存空间被释放,C语言函数参数传递可分为三种情况:简单变量作为函数参数,数组名作为函数参数,指针作为函数参数。

参考资料来源:

百度百科-main函数

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bdwisyou7d
推荐于2017-09-07 · TA获得超过1.3万个赞
知道大有可为答主
回答量:3774
采纳率:81%
帮助的人:1045万
展开全部
好象调用一次主窗口的close似乎就可以。或者是app的close, 或者是destroy或者是terminate,不记得是哪个函数了。

当然你杀掉自己也是可以的。 用kill。 或者是sys.exit也应该可以。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
silmerusse
2013-05-27 · TA获得超过6640个赞
知道大有可为答主
回答量:2919
采纳率:33%
帮助的人:2084万
展开全部
因为mainloop()没有收到消息要退出循环。
在你完成任务后调用root.destroy()即可退出循环。点右上角的x也是一样的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式