我开发了一个插件来替换Gedit中的一些功能。此功能通过一个菜单项显示。
如何删除当前菜单项以添加相同的新菜单项,除了这个新菜单项将绑定到我的回调?
答案 0 :(得分:1)
我没有在现有应用程序上尝试它,但总的来说,它归结为以下步骤。
UIManager
:GObject.property(type=Gedit.Window).get_ui_manager()
。UIManager.get_ui
获取当前的UI定义。使用此选项可确定要删除的项目。Builder.get_object
检索项目。destroy
。或者,您可以使用get_children
方法获取主菜单项并删除所需的孩子(即for i in menu.get_children(): menu.remove(i)
,其中i
是您想要摆脱的孩子:您将可能必须检查它才能知道要删除哪一个。UIManager.ensure_update
明确刷新用户界面。如上所述,我没有尝试过,也没有在附近进行Linux安装来验证这一点,但我希望这能为您提供足够的指示来解决问题。