Python3按钮无法删除

时间:2015-12-14 18:17:19

标签: python python-3.x button dictionary tkinter

长话短说,我已经在字典中填充了按钮,这些按钮调用带参数的函数(它们所在的坐标),如下所示:

for m in range(75, 86):
    for n in range(75, 86):
        x=Button(win, text=" ", command=lambda m=m, n=n: click(m, n))
        x.grid(row=m, column=n)
        buttons[(n, m)]=x

我想删除被叫按钮(在这种情况下是按下的按钮),但不知怎的,它会不断删除其他按钮。应删除按钮的功能是:

def click(p, q):
    global buttons
    buttons[(p, q)].destroy()

有人可以帮忙说出我做错了吗?

1 个答案:

答案 0 :(得分:2)

您正在将按钮数组中的按钮编入索引(n, m),但将按钮销毁为(m, n)。确定您是使用列优先或行优先表示法,然后始终如一地使用它!

如果您不能这样做,请使用(row, column)或至少(r, c)而不是无意义(m, n)(p, q)