4
import Tkinter
class buttton(Tkinter.Button):
def __init__(self,frame,action=None):
if action==None:
action=self.action
Tkinter.Button.__init__(self,frame,command=action)
self.pack(frame)
def action(self):
None
root=Tkinter.Tk()
button=buttton(root)
root.mainloop()
一旦運行這個問題,其中我無法找到,我遇到了一個非常奇怪的錯誤任何問題......這裏有什麼問題? (屬性錯誤__len__)
Traceback (most recent call last):
File "C:/Users/19CRF01/Desktop/ab.py", line 14, in <module>
button=buttton(root)
File "C:/Users/19CRF01/Desktop/ab.py", line 8, in __init__
self.pack(frame)
File "C:\Python27\lib\lib-tk\Tkinter.py", line 1940, in pack_configure
+ self._options(cnf, kw))
File "C:\Python27\lib\lib-tk\Tkinter.py", line 1162, in _options
cnf = _cnfmerge(cnf)
File "C:\Python27\lib\lib-tk\Tkinter.py", line 114, in _cnfmerge
for c in _flatten(cnfs):
File "C:\Python27\lib\lib-tk\Tkinter.py", line 1898, in __getattr__
return getattr(self.tk, attr)
AttributeError: __len__
我會很樂意爲更多任何幫助!
這就是解決方案,但描述是有點兒含糊。 'pack'不需要'frame'對象,它的幫助('pack_configure(self,cnf = {},** kw)')表明它試圖使用'frame'作爲配置字典。 – tdelaney
另外,它看起來像在OP的代碼中,想法是使用'pack()'將'self'添加到'frame'。這不是必須的,因爲它已經在調用Button.__ init __()'時被設置爲'frame'的子元素。 –
哇......謝謝......我現在要去死在恥辱...... –