Python, Tkinter, 如何根据按钮点击改变GUI

2 投票
1 回答
3394 浏览
提问于 2025-04-17 02:16

我在做一个编程作业,使用的是Tkinter这个工具,遇到了一个问题。

我想让用户在一个文本框里输入一个数字,然后当他们点击提交按钮时,程序根据输入的数字在界面上添加额外的字段。

我尝试把相关的代码放在一个叫'displayText()'的函数里,这个函数是在用户点击提交按钮时被调用的;但是,我放进去的和界面相关的代码却是在窗口加载的时候就被执行了。

import tkinter

#When user clicks on button
def displayText():
    #DO CHANGE IN GUI

root = tkinter.Tk()
button = tkinter.Button(root, text="Submit", command=displayText())
button.pack()

root.mainloop()

1 个回答

5

问题出在这行代码上:

button = tkinter.Button(root, text="Submit", command=displayText())

command这个选项需要的是一个对命令的引用。而你现在做的是调用了一个命令(displayText()),然后把这个命令的结果给了选项。你需要去掉(),这样才能把真正要执行的命令和这个选项关联起来,像这样:

button = tkinter.Button(root, text="Submit", command=displayText)

撰写回答