in <module>
MKS.move(1, 5, 0)
AttributeError: ‘int’ object has no attribute ‘move’
Программка такая:
import tkinter as tk root = tk.Tk() c= tk.Canvas(root, width=500, height=400, bg='black') c.pack() MKS=c.create_polygon(110, 304, 110, 308, 106, 308, 106, 322, 110, 322, 110, 326,121, 326, 126, 324, 138, 327, 138, 332, 146, 332, 146, 322,138, 332, 138, 324, 131, 322, 142, 318, 142, 312, 128, 307, 128, 302, 134, 302, 134,280, 122, 280, 122, 300, 126, 302, 126, 306, 121, 304, fill='#FFD700', outline='black') #poligon MKS for x in range(0, 60) : MKS.move(1, 5, 0) tk.update() time.sleep(0.05) root.mainloop()
Ранее вот такой вариант проверял, работает:
from tkinter import* import time tk= Tk() canvas = Canvas(tk, width=500, height=400, bg='white') canvas.pack() canvas.create_polygon(10, 304, 10, 308, 6, 308, 6, 322, 10, 322, 10, 326,21, 326, 26, 324, 38, 327, 38, 332, 46, 332, 46, 322,38, 332, 38, 324, 31, 322, 42, 318, 42, 312, 28, 307, 28, 302, 34, 302, 34,280, 22, 280, 22, 300, 26, 302, 26, 306, 21, 304, fill='#FFD700', outline='black') for x in range(0, 60) : canvas.move(1, 5, 0) tk.update() time.sleep(0.05) root.mainloop()
Собственно, отличие минимальное - идентификатор MKS (“Межпланетная Космическая Станция”). Это мне удобнее, потому что этот фрагмент у меня идет как модуль другой, более обширной программы.
Что подправить в первом варианте? Или не заморачиваться и брать второй?