Python tkinter 多次调用同一个标签

Python tkinter same Label called multiple times

有什么办法可以多次使用同一个标签吗? 我有的是:

emptyRow = Label(frame)

当我想使用那个空行时,我这样称呼它:

emptyRow.grid(row=0)
emptyRow.grid(row=3)

我只能在该网格上进行最新调用,因此将忽略 row=0 并使用 row=3,以任何方式重用它,这样我就不必创建另一个 emptyRow3 = Label(frame) ?

简短回答:不,您不能在多个位置显示小部件/创建多个空标签而不为每个标签调用 Label(frame)

如果创建一个空标签是您经常做的事情,您可以创建一个简短的函数来完成它:

def fill_empty(parent,row,column):
    empty = Label(parent)
    empty.grid(row=row,column=column)
    return empty

但我强烈建议使用填充而不是虚拟小部件来 space 解决问题,请参阅 this documentation 了解详细信息。

您可以将您的元素定义为 returns 元素的函数。每次调用它都会创建一个新对象:

emptyRow = lambda:Label(frame)

emptyRow().grid(row=0)
emptyRow().grid(row=3)