如何更新Tkinter标签,而不是将它们堆叠在一起

时间:2019-01-25 00:16:44

标签: python tkinter

在按钮上按下并调用功能,将在旧标签的顶部创建一个新标签。

我可以知道,每按一次按钮都会在旧按钮的顶部创建一个新标签。这不仅会占用额外的内存,而且当新标签的字符数比前一个标签短时,我仍然可以看到旧标签文本的结尾,而该文本并未覆盖新标签。

我也看到过类似的问题,但是无法将解决方案应用于我的代码。

from tkinter import *
import random

window = Tk()
window.geometry("200x100+0+0")

def MakeLabel():
    TheNumber = str(random.randint(5, 15))
    MyLabel = Label (window, text=TheNumber, bg="grey", font="none 12 bold").place(x=0, y=50)

MakeLabel()

UpdateLabelButton = Button(window, text="Update Label")
UpdateLabelButton.place(x=0, y=0)
UpdateLabelButton.config(command=MakeLabel)

window.mainloop()

预期:按下按钮后,应使用TheNumber字符串的新值更新MyLabel变量。

实际:似乎第二个变量MyLabel的文本等于新的TheNumber变量字符串值。

0 个答案:

没有答案