IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

FAQ Python

FAQ PythonConsultez toutes les FAQ

Nombre d'auteurs : 11, nombre de questions : 188, dernière mise à jour : 14 juin 2021 

 
OuvrirSommaireGUITkinter / Tix / PmwTkinterDivers

Ce message est souvent obtenu lorsque vous positionnez votre widget en même temps que vous le créez. Les fonctions pack(), grid(...) ou place(...) ont None comme valeur de retour. Ainsi en manipulant en même temps la construction et l'affichage du widget vous récupérer la valeur None au lieu de l'identifiant du widget.
Pensez toujours écrire ces actions en 2 lignes

 
Sélectionnez
>>> import Tkinter as Tk
>>> root = Tk()
>>> variable = Tk.Entry(root).pack()
>>> print variable.get()
AttributeError: 'NoneType' object has no attribute 'get'
 
Sélectionnez
>>> import Tkinter as Tk
>>> root = Tk()
>>> variable = Tk.Entry(root)
>>> variable.pack()
>>> print variable.get()
''
Créé le 20 avril 2006  par Guigui_

Comme pour la plupart des toolkit graphique, il est nécessaire en général avant de pouvoir créer des objets Tkinter de créer une instance Tk en premier lieu. Ce message d'erreur apparaît classiquement lorsque vous créez un objet PhotoImage alors qu'aucune instance Tk n'existe.

 
Sélectionnez
Python 3.1b1 (r31b1:72424, May  7 2009, 15:38:57) [MSC v.1500 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> import tkinter
>>> img = tkinter.PhotoImage()
Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    img = tkinter.PhotoImage()
  File "C:\Python31\lib\tkinter\__init__.py", line 3269, in __init__
    Image.__init__(self, 'photo', name, cnf, master, **kw)
  File "C:\Python31\lib\tkinter\__init__.py", line 3210, in __init__
    raise RuntimeError('Too early to create image')
RuntimeError: Too early to create image
>>> root = tkinter.Tk()
>>> img = tkinter.PhotoImage()
>>>
Créé le 23 mai 2009  par Guigui_

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2005-2009 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.