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

时间:2014-07-15 10:04:23

标签: python-3.x tkinter

我对 Python 以及一般的编码都很陌生,最近我开始了一个简单(或不那么简单)的项目,即制作经典 Space的改版版本入侵者 tkinter 的形式使用 tk 。我遇到了一个问题,我不知道如何解决:如何将矩形(子弹)移动到另一个矩形(宇宙飞船)。我通过在0,0创建它们来创建子弹,但后来我不知道如何将它们完全移动到宇宙飞船上。谢谢!

我可能没有偶然发现一个简单的解决方案。

2 个答案:

答案 0 :(得分:1)

当您最初在画布上创建某些内容(例如矩形)时,您可以通过将结果保存到变量来存储项目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)

我发现非常有用的两个资源是 http://www.tkdocs.com/tutorial/canvas.htmlhttp://effbot.org/tkinterbook/canvas.htm

答案 1 :(得分:0)

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