问题描述
在尝试更新画布中的项目后,执行了不同的操作。对象拒绝在画布内移动,即使我引用了对象本身,也无法设置其位置。我在此处提供的部分代码似乎是唯一的实际问题。它在屏幕上运行,获取一个小部件,该小部件包含一个画布和标签。我能够遍历标签,并且与画布对象相同。唯一的区别是我无法重新定位画布对象,但标签的问题为零。
是否存在用于更新或更改画布对象位置的特殊属性或方法? 我尝试使用ask_update(),draw(),标记移动的对象等。我不确定为什么它不起作用。
if type(obj).__name__ == DonateButton.__name__:
cnv_items = [child for child in obj.canvas.children]
for cnv_obj in cnv_items:
if type(cnv_obj).__name__ in [Ellipse.__name__,RoundedRectangle.__name__]:
cnv_obj.pos = (0,0)
解决方法
您可以使用group
的{{1}}条指令即时更改其对象的属性。下面的示例显示了一个canvas
下的Rectangle
和Ellipse
个对象,其中canvas
属性的变化是随机产生的:
pos