Tkinter Entry не показывает текущее значение textvariable
Рассмотрим этот код:
from tkinter import *
from tkinter.ttk import *
tk=Tk()
def sub():
var=StringVar(value='default value')
def f(): pass
Entry(tk,textvariable=var).pack()
Button(tk,text='OK',command=f).pack()
sub()
mainloop()
Мы ожидаем, что значениеvar
появляется в записи, но на самом деле это не так.
Странная вещь в том, что если я поставлю заявлениеvar.get()
в функции обратного вызова кнопки, значениеvar
появится
Это ошибка, вызванная некоторой оптимизацией локальной переменной в Python? И что я могу сделать, чтобы убедиться, что значениеtextvariable
всегда будет появляться в записи?
Пожалуйста, извините меня за мой плохой английский.