由于某些限制,我不能像平常一样使用类来完成这个任务。在
我需要给一个函数传递一个变量,但是这个函数在另一个函数中。在
这是我使用的代码,请温柔一点,我不是python向导,我是自学成才的。我遇到的问题是nButtons在函数重新着色时返回False。在
import maya.cmds as cmds
nButtons = 4
def ColorMeButtonsUI(nButtons):
def reColor(nButtons):
for i in range(nButtons):
cmds.button(str(i), edit = True, bgc = (1,1,1))
if cmds.window('colorUI', exists= True):
cmds.deleteUI('colorUI')
if not nButtons:
nButtons = 3
if nButtons >= 2 and nButtons < 10:
colorUI = cmds.window('colorUI', title='Color me, Buttons', widthHeight=(200, 55), rtf = True )
cmds.columnLayout( adjustableColumn=True)
cmds.button('Color', label='Color', command = reColor)
for i in range(nButtons):
cmds.button(str(i), label = 'Color'+str(i+1))
cmds.setParent( '..' )
cmds.showWindow( colorUI )
else:
cmds.error ('Input is invalid. Please confirm input >1 and <10')
return nButtons
ColorMeButtonsUI(nButtons)
编辑:命令正在由GUI按钮运行:cmds.button('Color', label='Color', command = reColor)
欢迎来到stackoverflow,你已经尝试不重复自己和迭代一个范围来编辑bgc,很好。{1通常使用你创建的dagui元素来调用它。Instance iterate使用更多信息迭代dict中的项以供处理的范围。在
我建议您避免在其他函数中创建函数。在
如果在外部添加函数:
您将能够使用从内部颜色按钮重新着色。在
另外,请注意,除非使用
^{pr2}$然后对该命令参数使用partial()。 我建议你读this other post。在
我的建议,仅供记录:
相关问题 更多 >
编程相关推荐