Tkinter -- StringVar() 工作不正常 [英] Tkinter -- StringVar() not working correctly
问题描述
在尝试使用 TkInter 初始化 StringVar()
时,我得到了这个巨大的错误.于是报错如下:
在 [160] 中:从 Tkinter 导入 *在 [161] 中:p = StringVar()---------------------------------------------------------------------------AttributeError 回溯(最近一次调用最后一次)<ipython-input-161-3e21f17f6e4f>在 <module>()---->1 p = StringVar()C:\Python27\lib\lib-tk\Tkinter.pyc in __init__(self, master, value, name)285 则保留现有值.第286话-->287 Variable.__init__(self, master, value, name)288第289话C:\Python27\lib\lib-tk\Tkinter.pyc in __init__(self, master, value, name)第216话第217话-->第218话219 如果名称:第220话AttributeError: 'NoneType' 对象没有属性 'tk'在 [162] 中:
不完全确定这里出了什么问题.我正在使用 A
Windows 7 系统,
Python(x,y) 版本 2.7.5.2
Python 2.7.5
在 Tkinter.py 文件中:
__version__ = "$Revision: 81008 $"
TkVersion = 8.5
如果有人对正在发生的事情有任何线索,那么将不胜感激......
您需要创建一个 Tkinter.Tk
在您创建 Tkinter.StringVar
之一之前:
root = Tk() # 你必须先这样做p = StringVar()
以下是演示:
<预><代码>>>>从 Tkinter 导入 *>>>>>>p = StringVar()回溯(最近一次调用最后一次):文件<stdin>",第 1 行,在 <module> 中文件C:\Python27\lib\lib-tk\Tkinter.py",第 287 行,在 __init__ 中Variable.__init__(self, master, value, name)文件C:\Python27\lib\lib-tk\Tkinter.py",第 218 行,在 __init__ 中self._tk = master.tkAttributeError: 'NoneType' 对象没有属性 'tk'>>>>>>根 = Tk()>>>p = StringVar()>>>While trying to initialize a StringVar()
using TkInter I am getting this huge error back. So the error is as follows:
In [160]: from Tkinter import *
In [161]: p = StringVar()
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-161-3e21f17f6e4f> in <module>()
----> 1 p = StringVar()
C:\Python27\lib\lib-tk\Tkinter.pyc in __init__(self, master, value, name)
285 then the existing value is retained.
286 """
--> 287 Variable.__init__(self, master, value, name)
288
289 def get(self):
C:\Python27\lib\lib-tk\Tkinter.pyc in __init__(self, master, value, name)
216 master = _default_root
217 self._master = master
--> 218 self._tk = master.tk
219 if name:
220 self._name = name
AttributeError: 'NoneType' object has no attribute 'tk'
In [162]:
Not entirely sure what is going wrong here. I am using A
Windows 7 system,
Python(x,y) version 2.7.5.2
Python 2.7.5
Within the Tkinter.py file:
__version__ = "$Revision: 81008 $"
TkVersion = 8.5
If anyone has any clue as to what is going on, then it will be greatly appreciated ...
You need to create an instance of Tkinter.Tk
before you create one of Tkinter.StringVar
:
root = Tk() # You must do this first
p = StringVar()
Below is a demonstration:
>>> from Tkinter import *
>>>
>>> p = StringVar()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python27\lib\lib-tk\Tkinter.py", line 287, in __init__
Variable.__init__(self, master, value, name)
File "C:\Python27\lib\lib-tk\Tkinter.py", line 218, in __init__
self._tk = master.tk
AttributeError: 'NoneType' object has no attribute 'tk'
>>>
>>> root = Tk()
>>> p = StringVar()
>>>
这篇关于Tkinter -- StringVar() 工作不正常的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!