Entrada Tkinter não mostrando o valor atual da variável de texto
Considere este código:
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()
Esperamos o valor devar
aparece na entrada, mas na verdade não.
O estranho é que, se eu colocar a afirmaçãovar.get()
na função de retorno de chamada do botão, o valor devar
vai aparecer.
Isso é um bug causado por algum tipo de otimização de variável local no Python? E o que posso fazer para garantir que o valor detextvariable
sempre aparecerá na entrada?
Por favor, me desculpe pelo meu inglês ruim.