0
我在寫一個腳本,可以放在例如meny.py文件在啓動時將所有自定義插件/ gizmos/.nk文件加載到新菜單中。它應該與指定文件夾中的子目錄一起工作,以創建子菜單以按類別排序項目。 問題:它創建菜單及其子菜單以及項目,但是項目名稱不同時,它們在執行時會創建完全相同的節點。我不知道那裏發生了什麼。將列表項添加到nuke.addCommand方法只需要其中一個項目?
這是我到目前爲止有:
import os
pluginpath = 'C:\Users\Workstation\.nuke\userplugins'
#print nuke.pluginPath()
customMenu = nuke.menu('Nodes').addMenu('UserPlugIns')
for dirpath, dirnames, filenames in os.walk (pluginpath):
print ('')
print ('CurrentPath: ' , dirpath)
nuke.pluginAddPath(dirpath)
dirname = os.path.split(dirpath)[-1]
subMenu = customMenu.addMenu(dirname)
#print ('Directories: ' , dirnames)
#print ('Filenames: ' , filenames)
for x in filenames:
print x
subMenu.addCommand(x, lambda: nuke.createNode('{}'.format(x)))
我想這是導致問題的最後一道防線。有任何想法嗎?