我正在学习Python并有以下任务: 我希望我的代码显示用户在使用 tkinter 的 Button 方法时编写的文本。
但是它没有显示任何内容,我相信变量(文本)在方法(button_clicked)内不起作用。 看来我正在隐藏我的变量(文本),并且我已经尝试将其设为全局变量,但没有效果。 任何帮助将不胜感激。
from tkinter import *
window = Tk()
window.title("My first GUI program")
text="My text"
my_label = Label(text = "Hello", font= ("Arial", 24, "bold"))
my_label.pack()
#Studying Entry
input = Entry(width=10)
input.pack()
text = input.get()
#Button
def button_clicked():
-my_label["text"] = text
button = Button(text="Click Me", command = button_clicked)
button.pack()
window.mainloop()
文本不会显示,因为单击按钮时您没有从
Entry
小部件中检索文本。在您的代码中,您在创建 Entry
后尝试检索它的文本,这就是为什么它不显示的原因。您可以像这样更新您的 button_clicked()
函数:
def button_clicked():
my_label["text"] = input.get()
如果您想将文本存储在
text
变量中并显示它,您可以使用以下代码:
def button_clicked():
global text
text = input.get()
my_label["text"] = text