Python 当我按下按钮时 Tkinter 不显示标签

Python Tkinter doesn't show the label when I press the button

我有一个输入和一个按钮。当我按下按钮时,我想要输入 (Entry) 的值。当我输入 print(mtext) 时它运行良好,但是当我将它放入标签时它不起作用。

代码如下:

from tkinter import *

root = Tk()
root.title("Mohamed Atef")
root.geometry("900x600")

var = StringVar()
var.set("Please write something")
label = Label(root, textvariable=var, padx=10, pady=10)

#input
text = StringVar()
entry = Entry(root, textvariable=text)

def mohamed():
       mtext = text.get()
       mohamed = Label(root, textvariable=mtext)
       mohamed.pack()

#button
buttonText = StringVar()
buttonText.set("Click me !")
button = Button(root, textvariable=buttonText, command=mohamed)

label.pack()
entry.pack()
button.pack()

root.mainloop()

如果您只想让 Entry 中的文本显示在您的标签下,您可以这样做:

def mohamed():
    mohamed = Label(root, textvariable=text)
    mohamed.pack()

您的代码无效,因为作为文本变量传递的值应该是 tkinter StringVar() 而不是 string

如果您不希望文本在您更改 Entry 时不断更新,您应该这样做:

def mohamed():
    mtext = text.get()
    mohamed = Label(root, text=mtext)
    mohamed.pack()

和 Flipp 一样,你的成品看起来像这样

from tkinter import *
root = Tk()
root.title("Mohamed Atef")
root.geometry("900x600")

var = StringVar()
var.set("Please write something")
label = Label(root, textvariable=var, padx=10, pady=10)

#input
text = StringVar()
entry = Entry(root, textvariable=text)

def mohamed() :
       mtext = text.get()
       mohamed = Label(root, text=mtext)
       mohamed.pack()

#button
buttonText = StringVar()
buttonText.set("Click me !")
button = Button(root, textvariable=buttonText, command=mohamed)

label.pack()
entry.pack()
button.pack()

root.mainloop()