销毁功能Tkinter

时间:2016-09-22 10:23:49

标签: python tkinter destroy tkinter-canvas

在这个程序中,我试图在新功能开始时销毁所有屏幕小部件,并立即在屏幕上重新创建它们以复制出现的新页面。我曾经使用过破坏功能来改变页面"当点击游戏菜单中的开始按钮时工作正常。

但是,当单击画布上的错误时,第二次尝试销毁所有页面时:

  

_tkinter.TclError:错误的窗口路径名称" .49314384"

提出了

preverified

1 个答案:

答案 0 :(得分:1)

IntroCanvas.bind("<Button-1>",  Activ1())
                                      ^^
IntroCanvas.pack()

您收到上述行中的错误。

添加括号表示“编译器到达那里后”调用该函数“。调用Activ1后,会调用Destroy()来销毁IntroCanvas,然后您尝试pack销毁小部件。因此,你得到了这个错误。

作为调试说明,如果您看到类似这样的错误消息,大部分时间都是因为您尝试对销毁小部件/对象执行某些操作,因此您应该查找摧毁电话。

解决方案,
您应该删除括号并向Activ1添加参数。

IntroCanvas.bind("<Button-1>",  Activ1)

def Activ1(event):