我正在更新现场的灯光名单。为此,我保留最后一个列表并删除所有元素,并根据新列表创建新元素.它很好地删除了所有的元素,但是当我尝试用新的元素进行更新时。它只是崩溃了然后说:
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)名单和新名单的打印都是正确的,所以我不知道为什么会失败.
发布于 2015-09-06 09:27:53
我让它添加了一个布局,并删除了这个布局=)
https://stackoverflow.com/questions/32412218
复制相似问题