Python/Tkinter-删除封闭区域中的所有对象

Python/Tkinter-删除封闭区域中的所有对象,python,canvas,tkinter,Python,Canvas,Tkinter,我正在尝试制作一个程序,点击该程序将删除封闭区域中的所有对象 下面是我的示例代码: import tkinter as tk root = tk.Tk() cv = tk.Canvas(root, height=400, width=400) cv.pack() cv.create_rectangle(50, 50, 100, 100) cv.create_line(60, 60, 80, 80) cv.create_line(60, 80, 80, 60) def onclick(

我正在尝试制作一个程序,点击该程序将删除封闭区域中的所有对象

下面是我的示例代码:

import tkinter as tk

root = tk.Tk()

cv = tk.Canvas(root, height=400, width=400)
cv.pack()

cv.create_rectangle(50, 50, 100, 100)

cv.create_line(60, 60, 80, 80)

cv.create_line(60, 80, 80, 60)

def onclick():

    todel = cv.find_enclosed(50, 50, 100, 100)
    cv.delete(todel)

cv.bind("<Button-1>", onclick())

root.mainloop()
将tkinter作为tk导入
root=tk.tk()
cv=tk.Canvas(根,高度=400,宽度=400)
简历包()
cv.创建矩形(50、50、100、100)
cv.创建_线(60,60,80,80)
cv.创建_线(60,80,80,60)
def onclick():
todel=cv.find_封闭(50、50、100、100)
cv.删除(todel)
cv.bind(“,onclick())
root.mainloop()

单击时,它应该删除矩形中的两行,但由于某些原因,它没有删除。如何实现这一点?

您必须对列表中的所有项目应用
delete

for d in todel:
    cv.delete(d)


您必须对列表中的所有项目应用
delete

for d in todel:
    cv.delete(d)