嘿, 我在Python 3中使用Tkinter的标记系统遇到了一些问题。 我有一个画布“ tile”矩阵,其中一些具有“ trap”标签。 如何将矩阵的每个图块的标记与“陷阱”标记进行比较(我不知道如何写条件,我知道我必须浏览矩阵并进行比较)
谢谢
答案 0 :(得分:0)
以下内容将比较画布中每个项目的标签,并返回具有“ trap”标签的所有项目ID的列表。
traps = [item for item in canvas.find_all() if "trap" in canvas.itemcget(item, "tags")]
在这里,canvas.find_all()
返回画布中所有项目的ID。 canvas.itemcget
获取标签配置信息,该信息是标签名称的列表,我们检查“ trap”是否为该列表的成员。
通常,您将操作绑定到标签,例如,如果单击带有trap标签的项目,则可以执行某些功能。如果使用绑定事件(canvas.tag_bind
),则可能不需要以上述方式搜索所有项目。