我对 Python 以及一般的编码都很陌生,最近我开始了一个简单(或不那么简单)的项目,即制作经典 Space的改版版本入侵者以 tkinter 的形式使用 tk 。我遇到了一个问题,我不知道如何解决:如何将矩形(子弹)移动到另一个矩形(宇宙飞船)。我通过在0,0创建它们来创建子弹,但后来我不知道如何将它们完全移动到宇宙飞船上。谢谢!
我可能没有偶然发现一个简单的解决方案。
答案 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.html 和 http://effbot.org/tkinterbook/canvas.htm
答案 1 :(得分:0)
假设您在画布上绘制矩形,可以使用画布的move方法将项目从当前位置移动到新位置。