有谁知道如何编辑 Netbeans 平台创建的骨架中显示的菜单?
提前感谢您花时间帮助我。
序言:编辑平台中存在的菜单项的唯一方法是通过您自己的模块之一。这意味着为了删除或重命名另一个模块中的菜单项,您必须首先将一个模块添加到您的应用程序中。您的应用程序本身不是一个模块,而是一个(潜在的)模块集合。
为基于 NB 平台的应用程序编辑菜单的最简单方法如下:
Important Files
节点XML Layer
节点(假设模块有层文件¹)This layer in context
节点Menu Bar
节点Delete
这会将必要的条目添加到您的模块层文件(_hidden 条目)中,只要加载了此模块,这些菜单和菜单项就不会被加载。如果您想在将来恢复某个项目,您可以从图层文件中删除该条目或右键单击该项目并选择Restore
。
编辑
这是重命名菜单项的方法:
name
查找具有“SystemFileSystem.localizingBundle”的属性Branding...
)Resource Bundles
标签菜单项的名称将位于此 Bundle 的节点中。只需编辑它,它将在您的应用程序中更改。这里的关键是找到命名菜单项的 Bundle。
这是替换菜单项操作的方法:
originalFile
值(您只是在寻找.instance
声明)²delegate
属性,您可以重新定义用于此菜单项的操作这里的重点是覆盖层文件中菜单项的动作定义,将动作替换为您自己的动作。您还可以使用此技术覆盖操作的显示名称,但如果您不需要替换操作,则品牌技术更简单。
¹如果您的模块没有图层文件,则需要先创建一个图层文件,然后才能使用此技术。这要求您layer.xml
在模块的一个包中创建一个文件。然后您需要使用以下命令在您的 Modules Manifest 文件中注册此文件OpenIDE-Module-Layer: com/example/mymodule/layer.xml
²对于这一步,您可以突出显示属性值的.instance
名称,originalValue
然后按 Ctrl + F。例如,如果originalValue
属性的值是Actions/Window/org-netbeans-core-windows-actions-RecentViewListAction.instance
您只想突出显示org-netbeans-core-windows-actions-RecentViewListAction.instance
部分。这里的重点是找到动作定义的位置(这部分图层文件只是将动作添加到菜单中)。
除了上面已经很好解释的内容之外,这里还有一个简单的技巧,可以添加您自己的全局菜单项,甚至无需查看 XML 文件内容:
PS:您也可以像为Menu Bar一样向Toolbar添加类别。谢谢
我不确定您到底想做什么,但 layer.xml 文件通常是进行此类更改的地方。