Я пытаюсь обновить список огней на сцене. Для этого я сохраняю последний список и удаляю все элементы и создаю новые на основе нового списка ... Он удаляет все элементы просто отлично, но когда я пытаюсь обновить их новыми, он просто сбой и говорит:Обновление динамических элементов
RuntimeError: Имя объекта 'textName1' не уникально. #
Это, судя по всему, удаляется, не так ли?
это код этой части ..
def updateList(self, name, totalLgt, *args):
print "update %s" % name
#create new buttons
self.text = pm.text('textName'+str(totalLgt), label="Name: %s" %name)
self.button = pm.button('btnName'+str(totalLgt), label="ON" ,command = lambda *args: self.turnOn(totalLgt, name))
self.button = pm.button('btnNameS'+str(totalLgt), label="SOLO", command = lambda *args: self.turnSolo(totalLgt, name))
def update(self, totalLgt,lis, *args):
totalLgt = 0
for lgt in lis:
totalLgt += 1
i = 1
print "updatea"
print lis
for i in range(totalLgt):
if (pm.window('textName'+str(i+1), exists=True)):
pm.deleteUI('textName'+str(i+1), control = True)
pm.deleteUI('btnName'+str(i+1), control = True)
pm.deleteUI('btnNameS'+str(i+1), control = True)
lisN = pm.ls(type='light')
totalLgt = 0
#list all lights in scene
for lgt in lisN:
totalLgt += 1
nameLgt = lgt.longName()
name = nameLgt.split("|")[1]
self.updateList(name, totalLgt)
отпечатками списка и новый список правильны, так что я не знаю, почему она не ...