首页 > 解决方案 > 如何在不重新运行代码的情况下再次运行 UI

问题描述

我创建了一个脚本来管理 Maya 中的灯光设置。您可以将灯光设置保存到文本文件并为其创建缩略图。当调用该函数来创建缩略图时,我希望 UI 完全刷新,以便新保存的设置将显示在 UI 中。只需在函数结束时再次调用我的 showUI() 函数就可以正常工作,但现在当函数结束时,UI 会刷新,然后在一毫秒后消失。

我试图手动删除窗口并创建一个新窗口,这给我留下了一个空窗口

    def createPreviewPic(self, pRenderCam, pSetupName, *args):
        # print "CREATE PREVIEW PIC CALLED (test)"
        arnoldRender(1, 1, True, True, pRenderCam, ' -layer defaultRenderLayer')

        cmds.setAttr("defaultArnoldDriver.ai_translator", "jpeg", type="string")
        # cmds.setAttr("defaultArnoldDriver.pre", "test", type="string")

        arnoldRender(260, 260, True, True, pRenderCam, ' -layer defaultRenderLayer')

        # mel.eval('renderWindowRender redoPreviousRender renderView')
        editor = 'renderView'
        formatManager = createImageFormats.ImageFormats()
        formatManager.pushRenderGlobalsForDesc("JPEG")
        cmds.renderWindowEditor(editor, e=True,
                                writeImage='%s\%s_pp.jpg' % (self.thumbnailsLocation, pSetupName))
        formatManager.popRenderGlobals()

        JehovaWitness().showUI()

这是函数,“JehovaWitness().showUI()”应该只是重新运行我的窗口

标签: pythonuser-interfacemaya

解决方案


推荐阅读