Python 我可以在Tkinter中更新标签吗?
这是一个例子。Python 我可以在Tkinter中更新标签吗?,python,tkinter,label,var,Python,Tkinter,Label,Var,这是一个例子。 size=2 标签=标签(tk,文本=大小) label.pack() 尺寸=3 我可以将标签更新为3吗?可以,只是使用了config方法: label = Label(root,text="this is text!") label.pack() label.config(text="that was text!") 另一种方法是设置标签的textvariable属性 textvar = StringVar() textvar.set("this is text!") la
size=2
标签=标签(tk,文本=大小)
label.pack()
尺寸=3
我可以将标签更新为3吗?可以,只是使用了
config
方法:
label = Label(root,text="this is text!")
label.pack()
label.config(text="that was text!")
另一种方法是设置标签的textvariable
属性
textvar = StringVar()
textvar.set("this is text!")
label = Label(root,textvariable=textvar)
label.pack()
textvar.set("that was text!")
在这种情况下,
label
实例将在更新textvar
实例时自动更新其文本。您需要标签的config
方法。你的意思是什么,举个例子。“this”可以是一个变量吗?它不是变量,而是字符串。为什么经常使用textvariable更好?textvar.set(“这是文本!”)
比label.config(“这是文本!”)
有什么好处?在这两种情况下,您都在执行函数调用来设置值。添加一个变量只会引入一个要管理的新对象,在这种情况下,它不会提供额外的值。我的理由可能是主观的,但我发现这样做有助于更好地对代码进行逻辑分解。然而,正如你所说,这样做没有强有力的客观理由。我编辑了我的答案来反映这一点。你也可以想象一个例子,其中有多个标签都与相同的textvariable
关联。在这种情况下,不需要在标签上循环来更新文本,只需更新textvariable
,标签就会自动更新。