尝试创建一个程序,该程序将在tkinter画布中将一个矩形简单地从一个位置移动到另一个位置。我已经看到了使用move(item,x,y)命令的示例。我不确定为什么它仍然显示错误AttributeError:'tkapp'对象没有属性'move'。 我已经尝试过改写代码,并将其重写为无效。
任何有关我弄错地方的提示都将非常感谢。
代码:
from tkinter import *
import time
root = Tk()
root.geometry("750x500")
canvas = Canvas(root,width=750, heigh = 500)
canvas.pack()
a = canvas.create_rectangle(0,100,25,0, fill = 'red')
b = canvas.create_rectangle(50,90,25,0, fill = 'blue')
c = canvas.create_rectangle(75,80,50,0, fill = 'yellow')
time.sleep(5)
root.move(c,150,50)
root.mainloop()
答案 0 :(得分:0)
您在错误的对象上使用move
。 root
是tkapp
类的主要应用,而您想在画布上移动矩形。因此,为了使这项工作有效,请使用
canvas.move(c, 150, 50)
相反。
编辑:
顺便说一句,在显示窗口之前先移动矩形。尝试将time.sleep
和canvas.move
放入一个单独的函数中,然后分别调用它,例如通过按钮观看矩形移动。