У меня есть сценарий, где я хочу, чтобы он отображал диалог пользователю. Когда пользователь вводит текст, окно закроется, и скрипт может принять введенный текст. У меня возникли проблемы с получением текста, он всегда пуст. Я основывал свой код на этом: Get value from Entry after root.destroy()Как получить текст из python Запись Tkinter после закрытия окна?
Как я могу получить текст?
#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())
Отказ в коде неверен. –
В идеале, вероятно, вы также должны использовать 'self' в качестве параметра для вашего метода def defback, а затем ссылаться на него вместо' args [0] '. – 2014-08-27 15:35:12