Blender 3.3.1脚本中bpy.types.TOPBAR_MT_app_system.append的替代方案
Blender Dvorak快捷键插件菜单修复方案
- 定位插件中报错的代码行,找到调用
bpy.types.TOPBAR_MT_app_system.append的菜单注册逻辑 - 替换为当前Blender版本支持的菜单注册方式,可按场景选择:
- 保留顶部栏菜单入口:
将原代码替换为:
注:bpy.types.TOPBAR_MT_app_preferences.append(menu_func)menu_func是插件中定义的菜单绘制函数,需确保其内部调用的操作符ID正确 - 整合到偏好设置面板(更符合Blender当前设计规范):
添加插件偏好设置类,替代原菜单注册逻辑:
同时在插件注册函数中添加:class DvorakKeymapPrefs(bpy.types.AddonPreferences): bl_idname = "你的插件ID" # 替换为插件实际ID,可在插件顶部bl_info字段中查找 def draw(self, context): layout = self.layout layout.operator("wm.dvorak_keymap_setup") # 替换为插件对应的操作符ID
注销函数中添加:bpy.utils.register_class(DvorakKeymapPrefs)bpy.utils.unregister_class(DvorakKeymapPrefs)
- 保留顶部栏菜单入口:
- 保存修改后重新启用插件,即可在对应位置看到菜单/设置选项
内容的提问来源于stack exchange,提问作者GamesDean218
相关产品推荐
相关产品推荐

