2015-12-25 16 views
0

我已經下載了一些網格導出腳本,以瞭解如何在python for blender(2.6.3)中編寫導出腳本。取消註冊並刪除python的攪拌機插件不會從菜單中刪除項目

該腳本遵循標準註冊/取消註冊以註冊或取消註冊腳本。

### REGISTER ### 

def menu_func(self, context): 
    self.layout.operator(Export_objc.bl_idname, text="Objective-C Header (.h)") 

def register(): 
    bpy.utils.register_module(__name__) 

    bpy.types.INFO_MT_file_export.append(menu_func) 

def unregister(): 
    bpy.utils.unregister_module(__name__) 

    bpy.types.INFO_MT_file_export.remove(menu_func) 

###if __name__ == "__main__": 
### register() 
unregister() 

的問題是,當我使用的runScript運行從文本編輯器的腳本(改變它在運行註銷後),它消除了劇本,但樹葉在出口菜單中unclickbale吃剩的,我無法刪除。 如果我再次運行寄存器,它會將非活動菜單選項變成可點擊的導出器菜單項,但是此外它還會添加另一個菜單項副本。 我之所以想繼續註冊和取消註冊主要是因爲我想做出改變,並測試他們...... 也許我應該不註冊直接運行的功能,但即使現在我有這個在我出口菜單:

enter image description here

如何刪除這些項目並沒有在出口菜單我的劇本的許多版本(取決於如果我所做的更改),也應我只是把函數而不是註冊/註銷的時候,我亂搞劇本和嘗試吐出?

回答

0

好吧,我已經找到了一個可行的方法...

如果按「F8」,將重新加載所有插件和刪除「死」菜單項。 解決了同一個插件的多個增加。

所以現在,如果我想改變插件並測試它,我做這樣的事情

  1. 運行腳本註銷
  2. 按F8
  3. 運行腳本寄存器

這就是我更新插件的方式,並且還有從導出/導入菜單實際運行它的附加步驟。

如果你有一個更簡單的方法來測試該插件修改請讓我知道...

0

我不是100%肯定的原因,但它涉及到運行的插件腳本中添加菜單項攪拌器的文本編輯器。即使攪拌機的模板腳本也是如此。

我認爲最好的解決方案是將它用作真正的插件 - 即將其保存到磁盤並在插件首選項中啓用/禁用它。您可以將其保存到已安裝的插件文件夾中,在您的user settings folder中或創建一個文件夾並設置file path for scripts。您也可以在插件首選項中使用Install from File按鈕。