Python 3.x 如何使用tkinter将一个矩形移动到另一个不同大小的矩形的位置

Python 3.x 如何使用tkinter将一个矩形移动到另一个不同大小的矩形的位置,python-3.x,tkinter,Python 3.x,Tkinter,我对Python和一般的编码非常陌生,最近我开始了一个简单(或不是那么简单)的项目,以tkinter的形式使用tk制作经典太空入侵者的改进版本。然而,我遇到了一个问题,我不知道如何解决:如何将一个矩形(子弹)移动到另一个矩形(宇宙飞船)。我在0,0处创建了子弹,但我不知道如何将它们精确地移动到宇宙飞船上。谢谢 可能有一个我没有想到的简单解决方案。假设您正在画布上绘制矩形,您可以使用画布的方法将项目从当前位置移动到新位置 当您最初在画布上创建某些内容(如矩形)时,可以通过将结果保存到变量来存储项i

我对Python和一般的编码非常陌生,最近我开始了一个简单(或不是那么简单)的项目,以tkinter的形式使用tk制作经典太空入侵者的改进版本。然而,我遇到了一个问题,我不知道如何解决:如何将一个矩形(子弹)移动到另一个矩形(宇宙飞船)。我在0,0处创建了子弹,但我不知道如何将它们精确地移动到宇宙飞船上。谢谢


可能有一个我没有想到的简单解决方案。

假设您正在画布上绘制矩形,您可以使用画布的方法将项目从当前位置移动到新位置

当您最初在画布上创建某些内容(如矩形)时,可以通过将结果保存到变量来存储项id,如

square = canv.create_rectangle(bbox, **options)
稍后,您可以使用move、itemconfig或itemconfigure将对象移动到其他地方,如

canv.move(square, dx, dy)
其中dx和dy是相对于当前位置的偏移量

或者,如果要从多个形状中生成对象,可以为它们指定标记,并通过标记一次操作对象,如下所示:

canv.create_rectangle(bbox, tags=('square'))
canv.move('square', dx, dy)
我发现两个非常有用的资源是 和

谢谢,但这不是我想要的答案。实际上,在我写这个问题之前,我就知道了
move
函数,但它就是不行!不久前,我想到了一个答案。不过,谢谢你的帮助!