<p><code>command</code>参数采用函数名。如果使用参数编写完整的调用,则不是函数名,而是这个函数调用返回的内容。因此,您的按钮将无法工作。它将具有命令<code>None</code></p>
<p>为了做你想做的事情,你必须让你正在调用的函数能够访问<code>StringVar()</code>。因此,您既可以获取条目的内容,也可以更改按钮和标签的值。为此,最好将字符串变量和小部件作为属性添加到您已经创建的顶层(<code>something</code>)。因此,它们对所有功能都可用,您可以获取和更改信息:</p>
<pre><code>
# Button Entry
def enter():
something.randvar.set(something.inputtedinfo.get())
something.userButton["text"] = "Submitted!"
# Main Function
def main():
global something
something = tkinter.Tk()
something.title("My First Tkinter Window")
something.geometry("600x400")
something.randvar = tkinter.StringVar()
something.randvar.set("")
EnterMessage = "Enter"
something.inputtedinfo = tkinter.StringVar()
userLabel = tkinter.Label(something, textvariable = something.randvar)
something.userEntry = tkinter.Entry(something, textvariable = something.inputtedinfo)
something.userButton = tkinter.Button(something, text = EnterMessage, command = enter)
something.userEntry.grid(row=0,column=0)
userLabel.grid(row=0,column=1)
something.userButton.grid(row=0,column=2)
something.mainloop()
if(__name__ == "__main__"):
main()
</code></pre>