Tkinter AttributeError: l'objet n'a pas d'attribut 'tk'
J'ai regardé un peu, mais je ne peux pas trouver de réponse à mon erreur. Voici le code:
import tkinter as tk
root=tk.Tk()
class Page(tk.Frame):
'''Enables switching between pages of a window.'''
def __init__(self):
self.widgets={}
self.grid(column=0,row=0)
page=Page()
tk.mainloop()
Voici l'erreur:
Traceback (most recent call last):
File "C:\Documents and Settings\Desktop\Python Scripts\Tkinter.py", line 11, in <module>
page=Page()
File "C:\Documents and Settings\Desktop\Python Scripts\Tkinter.py", line , in __init__
self.grid(column=0,row=0)
File "C:\Python34\lib\tkinter\__init__.py", line 2055, in grid_configure
self.tk.call(
AttributeError: 'Page' object has no attribute 'tk'
Je suis assez nouveau dans tkinter, et cette erreur m'a déconcerté. Je serais vraiment reconnaissant de toute aide, merci!!!!
OriginalL'auteur PlatypusVenom | 2015-01-14
Vous devez vous connecter pour publier un commentaire.
Votre
Page
méthode init doit appelerFrame
'init.super
pour usage général?href="http://stackoverflow.com/questions/576169/understanding-python-super-with-init-methods" title="la compréhension python super avec les méthodes init">stackoverflow.com/questions/576169/...
super
est généralement utilisé pour accéder à des méthodes qui appartiennent à la classe parent de l'objet donné. Ici,super(Page, self)
renvoie une Image-comme proxy deself
, et en appelant__init__()
sur elle invoqueFrame.__init__()
.OriginalL'auteur Kevin