在我的应用程序的plugin.xml中,我定义了几个工具栏,我希望在这些工具栏之间有分隔符。但是,如果我在它们之间放置<separator>
元素,它们就不会显示出来。
这是什么原因?有没有解决方法如何显示分隔符?
这是工具栏的贡献:
<menuContribution
allPopups="false"
locationURI="toolbar:org.eclipse.ui.main.toolbar?after=additions">
<toolbar
id="com.myapplication.editors.toolbar">
<command
commandId="com.myapplication.editors.open.xml.editor"
icon="icons/editors/xml.png"
label="Create XML File "
style="push">
<visibleWhen
checkEnabled="false">
<with
variable="com.myapplication.editors.command.state.active">
<equals
value="ENABLED">
</equals>
</with>
</visibleWhen>
</command>
<command
commandId="com.myapplication.editors.open.text.editor"
icon="icons/editors/text.png"
label="Create Plain Text File"
style="push">
<visibleWhen
checkEnabled="false">
<with
variable="com.myapplication.editors.command.state.active">
<equals
value="ENABLED">
</equals>
</with>
</visibleWhen>
</command>
</toolbar>
<separator
name="com.myapplication.editors.separator1"
visible="true">
</separator>
<toolbar
id="com.myapplication.editors.parameter.toolbar">
<command
commandId="com.myapplication.editors.matrix"
icon="icons/matrix.png"
label="Create Matrix"
style="push">
<visibleWhen
checkEnabled="false">
<with
variable="com.myapplication.editors.command.state.active">
<equals
value="ENABLED">
</equals>
</with>
</visibleWhen>
</command>
...
</toolbar>
</menuContribution>
知道为什么不起作用?
答案 0 :(得分:0)
<menuContribution
allPopups="false"
locationURI="toolbar:org.eclipse.ui.main.toolbar?after=additions ">
<toolbar
id="id.toolbar">
<command
commandId="id.command"
label="Hello World"
style="push">
</command>
<separator
name="id.separator"
visible="true">
</separator>
</toolbar>
希望上面的代码能够回答您的问题。
答案 1 :(得分:0)
我相信你的方式(即将分隔符声明为menuContribution的直接子节点)和yeswanth kumar's way(即在工具栏中声明分隔符)应该有效。
可能是this个错误。引用错误报告:
[...]当任何兄弟节点具有可见的节点或可见性标识符时,它将false设置为可见。它似乎永远不会在以后更新。
因此,工具栏上通过菜单贡献贡献的分隔符不会显示。
不幸的是,分隔符目前并不与visibleWhen
结合使用。