如何在窗口关闭后从Python Tkinter条目中获取文本?
我有一个脚本,想让它弹出一个对话框给用户。当用户输入文本后,窗口会关闭,脚本可以获取用户输入的文本并继续执行。
但我在获取文本时遇到了问题,获取到的总是空的。我是根据这个链接的代码写的:在root.destroy()后获取Entry的值
我该如何获取文本呢?
#2.7
from Tkinter import *
class GetUserInput(Frame):
def __init__(self, master=None):
Frame.__init__(self, master)
self.pathVar = StringVar()
self.path = Entry(master, bd =5)
self.path.bind('<Return>', self.callback)
self.path.pack(side = RIGHT)
L1 = Label(master, text="Enter value")
L1.pack( side = LEFT)
def callback(*args):
value = args[0].pathVar.get()
print value
args[0].master.destroy()
def close(self):
self.master.destroy()
if __name__ == '__main__':
root = Tk()
app = GetUserInput(master=root)
app.mainloop()
print(app.pathVar.get())
1 个回答
2
self.path = Entry(master, bd =5)
self.path = Entry(master, bd =5, textvariable=self.pathVar)
试着在这里指定一下 textvariable
这个参数。这样可以确保 StringVar 会跟着 Entry 的值实时更新。