我正在尝试使用textScrollList来创建物料管理器。这是我的第一个代码,我正在使用此工具自学Maya的Python。当前,我的代码列出了场景中的材料,但是它们是不可选择的。
我遇到的问题是使列出的材料可供选择。我认为我错误地定义了“ dcc”。
对于我误会或做错的事情,任何帮助都会很棒!提前致谢。
这是我的代码:
import maya.cmds as cmds
def getSelectedMaterial(*arg):
selection = cmds.textScrollList(materialsList, query=True, si=True)
print selection
cmds.window(title='My Materials List', width=200)
cmds.columnLayout(adjustableColumn=True)
materialsList = cmds.ls(mat=True)
cmds.textScrollList('materials', append=materialsList, dcc="getSelectedMaterial()")
cmds.showWindow()
最佳答案
错误发生在这里:
selection = cmds.textScrollList(materialsList, query=True, si=True)
您将
materialsList
定义为所有材料,但cmds.textScrollList()
期望您要查询的textScrollList
实例,您将其称为“材料”。用这一行替换该行:
selection = cmds.textScrollList('materials', query=True, si=True)
通常,对于GUI元素,我喜欢创建一个变量来捕获元素创建的结果,然后您可以稍后使用该变量进行查询或编辑。
像这样:
myTextList = cmds.textScrollList('materials', append=materialsList, dcc="getSelectedMaterial()")
print cmds.textScrollList(myTextList, query=True, si=True)
希望能有所帮助
关于python - 如何使用textScrollList选择 Material ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58089317/