如何覆盖标签

时间:2014-11-15 20:33:34

标签: python tkinter label

我正在尝试编写最简单的tkinter窗口,该窗口将显示一个输入框和一个按钮,并在输入框中输入任意数字的正方形。

代码我写了一些作品,除了每个新答案都覆盖在前一个答案上,所以如果你有一个很长的数字后跟一个小数字,你可以看到下面的旧答案的遗骸新的。

我该如何解决这个问题?有没有办法取消之前的标签?

from tkinter import *

x=Tk()
x.geometry('900x400')
e=Entry(x)
e.place(relx=0.4, rely=0.2)

def z():
    aa=e.get()
    aa=int(aa)
    aa=aa**2
    l=Label(x, text=aa).place(relx=0.4, rely=0.4)
    e.delete(0, END)

b=Button(x, text='PRESS', command=z).place(relx=0.6, rely=0.2)
x.mainloop()

1 个答案:

答案 0 :(得分:0)

不要创建mpnew标签。创建一次标签,然后使用configure方法更改文本。

global l
l = Label(...)
l.pack(...)
...
l.configure(text="some string")

建议:在学习tkinter时,忽略place。它不如packgrid有用。

注意:您必须创建标签,然后在单独的行上调用pack / place / grid,因为pack / place / grid始终返回None。

相关问题