2015-02-11 55 views
1

我遇到了tkinter问题。经过几个小时的研究,我发现了我的错误,但不明白为什么会发生。tkinter包或网格或放置错误

如果我写这个片段:

self.progressbar = ttk.Progressbar(self.frame_content, orient=HORIZONTAL, length=200, mode='determinate').grid(row = 2, column = 2) 

,而不是这一个:

self.progressbar = ttk.Progressbar(self.frame_content, orient=HORIZONTAL, length=200, mode='determinate') 
self.progressbar.grid(row = 2, column = 2) 

我得到这个错误:

AttributeError: 'NoneType' object has no attribute 'start' 

我理解错误,但我不了解它为何发生。有人可以向我解释吗?

+0

规范回答:http://stackoverflow.com/q/2034576/3001761 – jonrsharpe 2015-02-11 22:56:25

回答

2

这是因为grid(row = 2, column = 2)根据定义返回null,即它不是错误。因此,在您的第一个示例中,self.progressbar为空。在第二个例子中,self.progressbar持有ttk.Progressbar()的实例,情况并非如此。同样是pack(),顺便说一句。

+0

感谢您的明确解释;我会研究这个问题以更好地理解。 – jmercier 2015-02-11 22:59:55

相关问题