我遇到了这个问题,我不明白为什么。
我从我的应用程序中提取了我的代码并制作了这个测试代码,这样你就不必通过一堆垃圾来了解我在问什么。
我有这个在其他代码中工作。但是在比较了两者之后,我终究无法弄清楚这一点。
在此应用程序中,我收到错误“AttributeError:‘NoneType’对象没有属性‘delete’”。
import Tkinter as tk
def main():
mainWindow = tk.Tk()
v = tk.StringVar()
entryBox = tk.Entry(mainWindow, textvariable=v).grid(column=0, row=1)
def test():
entryBox.delete(0,20)
testButton = tk.Button(mainWindow, text='Go!', command=test, padx=10).grid(row=2, column=0)
tk.mainloop()
main()
原文由 Phil J Fry 发布,翻译遵循 CC BY-SA 4.0 许可协议
在这一行中:
grid 不返回任何东西,所以 entryBox 是
None
,它没有 delete 方法。 You have to setentryBox
totk.Entry(mainWindow, textvariable=v)
then call thegrid
method onentryBox