【问题标题】:Updating Label After Button Press with Tkinter [duplicate]使用 Tkinter 按下按钮后更新标签 [重复]
【发布时间】: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()

似乎该功能在我没有按下按钮的情况下运行,因为在运行它时,标签已经像条目一样显示“输入”。

任何帮助将不胜感激。我敢肯定这是一个愚蠢的错误。

谢谢!

【问题讨论】:

    标签: python python-3.x tkinter tkinter-entry


    【解决方案1】:

    这是因为您通过在 command= 选项中包含括号来调用 updateLabel(),请尝试以下操作:

    but = Button(top, text="Enter", command=updateLabel)
    

    command= 选项需要一个可调用的(也就是前括号)

    【讨论】:

    • 当然可以,如果这解决了您的问题,请将答案标记为已接受,以便其他人可以更快地找到解决方案:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多