python - 对于 Maya,我如何在另一个函数中调用一个函数
问题描述
试图使这项工作
import maya.cmds as mc
def firstFace():
FaceToSel = 'first' def allFace():
FaceToSel = 'all'
def execute():
if FaceToSel == 'first':
print Yes
elif FaceToSel == 'all':
print No
def ui():
if mc.window('face_Select', exists = True):
mc.deleteUI('face_Select')
FaceWin = mc.window('face_Select', mxb = False)
mc.columnLayout( adjustableColumn = True )
mc.intFieldGrp( 'numberOfFaces', label = 'Number Of Facess', value1 = 10 )
ButtonOne = mc.radioButtonGrp( label='Type', labelArray3=['TopFaces', 'Allfaces'], numberOfRadioButtons = 2, onCommand1 = 'firstFace()', onCommand2 = 'lastFace()')
mc.button( label = 'Select faces', command = 'execute()', align = 'center', aop = True)
mc.showWindow('face_Select')
ui()
解决方案
先问一个问题。然后提供一个带有缩进的代码,用逗号输入 Yes 和 No,检查你的函数是否有一个 def 存在,命令标志是否有正确的数据,这样会让你更容易回答.....
所以这是一个工作代码,如果你想要更多解释,请查看我已经回答的关于 ui 的问题
import maya.cmds as mc
from functools import partial
def execute(FaceToSel, *args):
option = mc.radioButtonGrp(FaceToSel, q=True, select=True)
if option == 1:
print True
elif option == 2:
print False
def ui():
if mc.window('face_Select', exists = True):
mc.deleteUI('face_Select')
FaceWin = mc.window('face_Select', mxb = False)
mc.columnLayout( adjustableColumn = True )
mc.intFieldGrp( 'numberOfFaces', label = 'Number Of Facess', value1 = 10 )
ButtonOne = mc.radioButtonGrp( label='Type', labelArray2=['TopFaces', 'Allfaces'], numberOfRadioButtons = 2, select=1)
mc.button( label = 'Select faces', command = partial(execute, ButtonOne), align = 'center', aop = True)
mc.showWindow('face_Select')
ui()
推荐阅读
- ember.js - 如何在 Ember 中减少模型钩子的负载
- ruby-on-rails - gem 'msgpack' 中的问题
- python - 在 Flask 中将变量从一个函数传递到另一个函数时出现 TypeError
- firebase - 无法访问我的 Firebase 实时数据库数据
- browser - 如何安装特定版本的 Microsoft Edge 浏览器?
- c# - C#检测windows重启和停止
- amazon-web-services - preactions":"truncate table 在glueContext.write_dynamic_frame.from_jdbc_conf 中不起作用
- firebase - Firebase Facebook 登录 ionic3
- python - PyQt5 错误显示 html: js: Uncaught ReferenceError: L is not defined
- php - OCI_INVALID_HANDLE 总是为 OCI-Lob::save() 返回