Pymel 简单UI脚本出错

Pymel 简单UI脚本出错,pymel,Pymel,我收到以下错误消息:#错误:缩进错误:未缩进不匹配任何外部缩进级别# 我曾尝试删除所有缩进,并用四个空格替换,但仍然出现此错误 我该怎么办 将pymel.core导入为pm 类UI(): 定义初始化(自): 打印“init” def重命名选择(自): sel=pm.ls(sl=True) dialog=pm.promptDialog(title='Rename Object',message='Enter Name:',button='OK','Add','Cancel'],defaultBut

我收到以下错误消息:#错误:缩进错误:未缩进不匹配任何外部缩进级别#

我曾尝试删除所有缩进,并用四个空格替换,但仍然出现此错误

我该怎么办

将pymel.core导入为pm
类UI():
定义初始化(自):
打印“init”
def重命名选择(自):
sel=pm.ls(sl=True)
dialog=pm.promptDialog(title='Rename Object',message='Enter Name:',button='OK','Add','Cancel'],defaultButton='OK',cancelButton='Cancel',dismisstring='Cancel')
如果对话框==“确定”:
name=pm.promptDialog(query=True,text=True)
对于sel中的e:
e、 重命名(名称)
如果对话框==“添加”:
name=pm.promptDialog(query=True,text=True)
对于sel中的e:
e、 重命名(e+name)
def CreateCircularController(自身):
dialog=pm.promptDialog(title='Name',message='Name CTL:',button='OK','u CTL','Cancel'],defaultButton='OK',cancelButton='Cancel',dismisstring='Cancel')
selectedJoint=pm.ls(sl=True)
name=pm.promptDialog(query=True,text=True)
对于选定接头中的e:
如果对话框==“确定”:
控制器=pm.circle(nr=(0,1,0),n=名称)
ControllerGrp=pm.group(Controller,n=name)
如果对话框==“\u CTL”:
控制器=pm.circle(nr=(0,1,0),n=name+'CTL')
ControllerGrp=pm.group(Controller,n=name+'CTL')
pm.parent(ControllerGrp,selectedJoint,r=1)
pm.parent(ControllerGrp,w=1)
def按钮功能(自身,*参数):
打印('重命名')
重命名选择()
def SecondButton功能(self,*args):
打印('创建控制器')
CreateCircularController()
#######布局
def uipopup(自我):
mrwindow=pm.window(title=“Bjorn\u rigging\u wizzard”,iconName='BWZ',widtheight=(200400))
#如果设置为true,则如果用户重新调整窗口,可调列将自动更新UI布局。
pm.columnLayout(adjustableColumn=True)
#菜单中的文本
text(label='Select function doctor…')
#在菜单的布局中,图标向下,行并排水平排列
pm.columnLayout(columnAttach=('both',5),行间距=10,列宽=(100))
#按钮被制成变量,以便以后可以使用setCommand调用它们,从而实现功能性
buttonOne=pm.button(label='Rename',width=100,command=self.buttonfunction)
buttonTwo=pm.button(标签=“选择时的控制器”,宽度=100)
buttonTwo.setCommand(self.secondButtonfunction)
#带有“..”的setParent返回到层次结构中,您将看到以下文本位于按钮的“div”之外。
pm.setParent(“..”)
pm.text(“”)
text('Blaabjergb.com')
#一旦一切都完成,我们就可以显示窗口
pm.showWindow(mrwindow)
UI1=UI()
UI1.uipopup()
  • 刚才注意到,def CreateCircularController前面有5个空格,另一个方法定义前面有4个空格。请确保每个方法定义前面有4个空格

  • 由于
    def CreateCircularController(self):
    后面的空行也可能出现错误。请删除空行,然后重试


  • 错误还应该包含行号。变量不应该用大写字母命名,这不是您的问题,但是它应该真正保留给类名而不是变量,驼峰大小写是可以的,但执行您所做的操作是不好的
    ControllerGrp
    Hi Sunny,这似乎并不能解决错误消息。但是,在我的类之外创建一个定义,并在功能中对其进行校准似乎是可行的。也许我只是不能在定义UI的类中定义功能。@Bjørn用另一个观察编辑了答案。请尝试一下,并告诉我它是否有效。