使用 Tkinter 按下按钮后更新标签 [重复]
Posted
技术标签:
【中文标题】使用 Tkinter 按下按钮后更新标签 [重复]【英文标题】:Updating Label After Button Press with Tkinter [duplicate] 【发布时间】:2020-10-21 06:51:59 【问题描述】:我对 Python 很陌生。作为学习 Tkinter 以应用于其他项目的一种方式,我想创建一些东西,在按下按钮后将标签更新为条目中的内容。
from tkinter import *
top = Tk()
response = StringVar()
response.set("text")
var = StringVar()
var.set("Input")
def updateLabel():
response.set(ent.get())
ent = Entry(top, textvariable = var)
lab = Label(top, textvariable = response)
but = Button(top, text = "Enter", command = updateLabel())
lab.pack(side = LEFT)
ent.pack(side = LEFT)
but.pack(side = RIGHT)
top.mainloop()
似乎该功能在我没有按下按钮的情况下运行,因为在运行它时,标签已经像条目一样显示“输入”。
任何帮助将不胜感激。我敢肯定这是一个愚蠢的错误。
谢谢!
【问题讨论】:
【参考方案1】:这是因为您通过在 command=
选项中包含括号来调用 updateLabel()
,请尝试以下操作:
but = Button(top, text="Enter", command=updateLabel)
command=
选项需要一个可调用的(也就是前括号)
【讨论】:
当然可以,如果这解决了您的问题,请将答案标记为已接受,以便其他人可以更快地找到解决方案:)以上是关于使用 Tkinter 按下按钮后更新标签 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
单击后更新按钮的位置? (Tkinter Python GUI)
有没有办法修复 while 循环不使用 time.sleep 更新 tkinter 标签?
在 Tkinter 中按下按钮后如何清除 Entry 小部件?