canvas.delete()有什么作用?

时间:2019-01-21 09:41:12

标签: python tkinter

我使用canvas.create_rectangle()绘制矩形并将绘制的项目分配给specifier。但是,使用canvas.delete(specifier)删除项目后,我仍然可以成功运行canvas.delete(specifier)而不会引起错误。我可以知道这是什么原因吗?

1 个答案:

答案 0 :(得分:3)

无法真正知道为什么?,因为(我所知道的)任何地方都没有记录。

这只是tkinter的作者所做的设计决定:即,如果没有匹配项,则不视为错误。我的猜测是,由于意图是要摆脱某些东西,因此是否事先存在并不重要。

如果在您的情况下知道是否重要,可以先使用Canvas.find_all()方法,然后查看返回的列表是否为空。