gpt4 book ai didi

python - 检查小部件是否存在(Tkinter)

转载 作者:太空宇宙 更新时间:2023-11-04 01:32:10 24 4
gpt4 key购买 nike

我想在删除小部件(例如在 Canvas 上绘制的矩形)之前检查它是否存在。

这是我的问题:我有两种删除矩形的方法。一个使用 bind 绑定(bind)到 button-1 (单击时删除矩形)如果在一定时间内未单击矩形(使用 Widget.after 检查),另一种方法将删除矩形。我想检查第二种方法中是否存在矩形,因为我想计算用户未单击的矩形,我能想到的唯一方法是检查它是否已被删除。有没有办法做到这一点?当然,我可以在 button-1 事件处理程序中设置一个变量并从其他方法检查它。但只是想知道是否 Tkinter提供诸如“项目存在”之类的方法。

编辑:好吧,我刚刚发现了一个技巧。如果我在已删除的小部件上使用 itemconfig,我会得到空集。我使用该值来查看小部件是否已被删除。不过,我不确定这是否是一种优雅的方式。

最佳答案

在我看来你可以使用 Canvas.find_all获取 Canvas 上所有项目的元组。然后您可以查看您的特定项目是否在该元组中 in。例如:

if item in my_canvas.find_all():
my_canvas.delete(item)
else:
print("Item not on canvas")

关于python - 检查小部件是否存在(Tkinter),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13183717/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com