Python Tkinter-从root.destroy()之后的条目中获取值

Python Tkinter-从root.destroy()之后的条目中获取值,python,tkinter,Python,Tkinter,我创建了输入字段,按下或submit按钮后,我调用root.destroy(),但如何在销毁后从输入中获取值呢 当我调用root.close()时,如果我调用self.EntryName.get(),我可以从条目中获取值,但是如何使用root.destroy() #Python 3.4.1 输入io 导入请求 将tkinter作为tk导入 从PIL导入图像,ImageTk def get_image(): im=请求。获取('http://lorempixel.com/“+str(random

我创建了输入字段,按下
或submit按钮后,我调用
root.destroy()
,但如何在销毁后从输入中获取值呢

当我调用
root.close()
时,如果我调用
self.EntryName.get()
,我可以从条目中获取值,但是如何使用
root.destroy()

#Python 3.4.1
输入io
导入请求
将tkinter作为tk导入
从PIL导入图像,ImageTk
def get_image():
im=请求。获取('http://lorempixel.com/“+str(random.randint(300400))+”/“+str(random.randint(70120))+”/”)
返回图像。打开(io.BytesIO(im.content))
类ImageSelect(tk.Frame):
def uuu init uuu(self,master=None):
tk.Frame.\uuuuu init\uuuuuuu(自,主)
master.可调整大小(宽度=假,高度=假)
主标题(“图像管理器”)
master.iconify=False
master.deiconify=False
master.grab\u set=True
image=ImageTk.PhotoImage(get_image())
self.image=tk.Label(image=image)
self.image.image=image
self.image.grid(行=0,列span=3)
self.reload=tk.Button(text='reload').grid(行=1,列=0,粘性='w'))
self.path=tk.Entry().grid(行=1,列=1,sticky='we')
self.submit=tk.Button(text='submit',command=self.close).grid(行=1,列=2,粘滞='e')
def关闭(自我):
self.master.destroy()
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
root=tk.tk()
app=ImageSelect(master=root)
app.mainloop()
#这段代码我想在windows销毁后执行。
#此行返回此错误
#\u tkinter.TclError:无效的命令名“.57818448”

#打印(app.path.get())#创建一个
StringVariable
,即使在销毁窗口后,它也会保留条目的值

#inside __init__ 
self.pathVar = tk.StringVar()
self.path = tk.Entry(textvariable=self.pathVar)
self.path.grid(row=1, column=1, sticky='we')

#...

if __name__ == '__main__':
    root = tk.Tk()
    app = ImageSelect(master=root)
    app.mainloop()
    print(app.pathVar.get())


顺便说一下,不要做self.path=tk.Entry().grid()
。这将
网格
的结果无分配给
self.path
。如果您希望
self.path
指向该条目,则需要像我上面所做的那样,在单独的一行中使用
grid
将其显示出来。

这是您的实际代码吗?因为当我运行它时,我没有得到
TclError
,我得到的是
AttributeError:'NoneType'对象没有属性'get'
#inside __init__ 
self.pathVar = tk.StringVar()
self.path = tk.Entry(textvariable=self.pathVar)
self.path.grid(row=1, column=1, sticky='we')

#...

if __name__ == '__main__':
    root = tk.Tk()
    app = ImageSelect(master=root)
    app.mainloop()
    print(app.pathVar.get())