我想在画布上使用特定标签获取所有矩形的句柄,以使用网格几何管理器放置它们(用户可以通过拖动鼠标来移动它们,然后我想为他“重新排序”)。我没有矩形的句柄,但是它们都有相同的标记(“ moveable_canvas”)。从那里我可以转换为商品ID(.find_withtag),但是现在怎么办?我可以将ID设置为.itemconfigure等,但是如何“网格化”它们呢?
moveable_canvases = self.canv.find_withtag("moveable_canvas")
for canvas_id in moveable_canvases:
???.grid(...)
您可以使用画布的各种find *方法来查找所有对象。例如,要获取所有对象ID的列表,您可以执行以下操作:
self.canv.find_all()
要查找具有给定标签的所有内容,您可以使用find_withtag
而不是find_all
:
self.canv.find_withtag("moveable_canvas")
您说过,目标是获取这些对象ID,以便可以使用grid
。你不能这样做。grid
仅适用于小部件,不适用于画布对象。没有解决方法。无法将一个转换为另一个。
如果要在网格中排列项目,则必须自己做数学运算,并使用coords
或move
canvas方法对齐对象。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句