在这个程序中,我试图在新功能开始时销毁所有屏幕小部件,并立即在屏幕上重新创建它们以复制出现的新页面。我曾经使用过破坏功能来改变页面"当点击游戏菜单中的开始按钮时工作正常。
但是,当单击画布上的错误时,第二次尝试销毁所有页面时:
提出了_tkinter.TclError:错误的窗口路径名称" .49314384"
。
preverified
答案 0 :(得分:1)
IntroCanvas.bind("<Button-1>", Activ1())
^^
IntroCanvas.pack()
您收到上述行中的错误。
添加括号表示“编译器到达那里后”调用该函数“。调用Activ1
后,会调用Destroy()
来销毁IntroCanvas
,然后您尝试pack
销毁小部件。因此,你得到了这个错误。
作为调试说明,如果您看到类似这样的错误消息,大部分时间都是因为您尝试对销毁小部件/对象执行某些操作,因此您应该查找摧毁电话。
解决方案,
您应该删除括号并向Activ1
添加参数。
IntroCanvas.bind("<Button-1>", Activ1)
def Activ1(event):