python图形界面GUI——Tkinter的构造函数问题

以下是用手册上摘抄的程序。想问问(1)第4行master=None是什么作用(2)第13行app.master.title("Sampleapplication"),既然... 以下是用手册上摘抄的程序。想问问(1)第4行 master=None 是什么作用
(2)第13行app.master.title("Sample application") ,既然master=None,怎么还能调用master的函数呢。。。
请各位大侠不吝赐教,谢谢。

#!/usr/local/bin/python 1
from Tkinter import * 2
class Application(Frame): 3
def __init__(self, master=None):4
Frame.__init__(self, master) 5
self.grid() 6
self.createWidgets()7
def createWidgets(self):8
self.quitButton = Button ( self, text="Quit",9
command=self.quit ) 10
self.quitButton.grid() 11
app = Application() 12
app.master.title("Sample application") 13
app.mainloop()14
展开
 我来答
zhanxuw
推荐于2017-11-23 · TA获得超过398个赞
知道小有建树答主
回答量:255
采纳率:0%
帮助的人:332万
展开全部
嗯,怎么说呢。每一个gui程序都有一个称为顶层(toplevel)的窗口管理器用于管理那些窗口部件,如按钮,输入框之类的,这个窗口管理器就是这些下级部件的master,顶级窗口的master是None即,它自己管理自己。
回到你的问题,(1)第4行的master=None是表示Application这个类的master默认为None,即它是顶层窗口。
(2)第13行中的app.master是返回当前顶层窗口的对象,然后再调用title这个方法设置title,master=None只是表明app是顶层窗口而已。

我自己理解的。

参考资料: http://docs.python.org/library/tkinter.html

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
辉煌一生陈辉煌0g1
2010-06-26 · TA获得超过276个赞
知道答主
回答量:148
采纳率:0%
帮助的人:0
展开全部
对于第二个问题。 如果master=None的话, Frame.__init__里边会对master实例化的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式