Пытаюсь написать класс, но столкнулся с некоторыми проблемами:
1. Как сделать возможность использования нескольких объектов(создать две и более стрелки)
2. Как создать метод удаления объекта
3. Что такое *coords. Что это работа с координатами я понимаю, но почему поставлена впереди звезда.
Вот пример кода:
from Tkinter import *
import time
class arrowgrow:
def __init__(self, root, height, place):
self.clplace = place
self.clheight = height
self.clroot = root
begy = int(height/2) + place[1]+3
delta = 9
self.m1 = self.clroot.create_line(self.clplace[0]-15, self.clplace[1], self.clplace[0]+15, self.clplace[1])
self.m2 = self.clroot.create_line(self.clplace[0]-15, self.clplace[1]+self.clheight+5, self.clplace[0]+15, self.clplace[1]+self.clheight+5)
self.growline = self.clroot.create_line(self.clplace[0], begy+delta, self.clplace[0], begy-delta, arrow="both", tags="to_r1")
coords = self.clroot.coords("to_r1")
self.clcoords = coords
mmm = int((self.clheight-delta)/2)
for i in range(mmm):
time.sleep(0.01)
self.clcoords[3] = self.clcoords[3] - 1
self.clcoords[1] = self.clcoords[1] + 1
self.clroot.coords("to_r1", *coords)
self.clroot.update()
if __name__ == '__main__':
root = Tk()
c = Canvas(root, width=600, height=600, bg="white")
c.pack()
aa = arrowgrow(c, 200, [50, 10])
bb = arrowgrow(c, 346, [250, 110])
mainloop()