Estoy tratando de escribir una interfaz de usuario MUY simple en Python usando Tkinter. Me encontré con un pequeño problema con la clase StringVar
. El problema es que cuando ejecuto el script de python, aparece un error en la línea que inicializa la variable StringVar
. He escrito un programa de ejemplo con este tema que me gustaría conseguir trabajo:Problema con 'StringVar' en el programa Python
from Tkinter import *
var = StringVar()
var.set('test');
Cuando lo ejecuto a través de pitón veo este error:
$ python test.py
Traceback (most recent call last):
File "test.py", line 3, in <module>
var = StringVar()
File "/usr/lib/python2.6/lib-tk/Tkinter.py", line 254, in __init__
Variable.__init__(self, master, value, name)
File "/usr/lib/python2.6/lib-tk/Tkinter.py", line 185, in __init__
self._tk = master.tk
AttributeError: 'NoneType' object has no attribute 'tk'
Exception AttributeError: "StringVar instance has no attribute '_tk'" in <bound method StringVar.__del__ of <Tkinter.StringVar instance at 0xb73cc80c>> ignored
Tengo la sensación de que esto es una problema con mi instalación de Python, pero puede ser que esté haciendo algo mal? Estoy usando la versión 2.6.5 de Python en Ubuntu Linux si eso hace la diferencia.
¿Por qué tiene que llamar 'Tk()' explícitamente antes de la creación de un 'StringVar' objeto? – nbro