我有这个代码.....
import sys
sys.path.insert(0, '...')
import rotTool
reload(rotTool)
rotTool()
第一次将它加载到maya我有两个窗口。我意识到这是因为那里的重新加载,但没有它,如果你关闭窗口并需要重新打开(在同一个会话中)它将无法加载。我该如何解决这个问题?
提前致谢
答案 0 :(得分:0)
让我们在rotTool.py里面说它看起来像这样:
QWidget
它是一个继承自PySide
的类,当你调用run函数时,它会打开一个窗口并显示它。也许您没有使用import rotTool # Import module
myWin = rotTool.RotTool() # Create an instance of the class
myWin.run() # Call the instance's run method to open it up
,但同样的想法应该适用。
在Maya中,如果我需要打开此窗口,我执行:
run()
如果我关闭窗口,我可以再次执行最后两行来创建一个打开窗口的新实例。可能会有更多的东西,比如确保2个窗口不能同时打开,但这就是我通常要做的事情。
我不确定你的模块中有什么,所以很难给出具体的建议。您可能只需要将其包裹在函数中,而不是在脚本底部打开窗口,就像我的import
示例一样,这样它就不会在reload
或者0 % 2
上自动打开0
。希望有所帮助!