我在这里潜伏了很长时间并且已经获得了许多有用的答案,但我最终还是出于绝望而发布了这个初学者的问题 - 没有人可以帮助我!我非常感谢任何帮助,非常感谢你们。
我一直在更新我们在工作中使用的Word报告模板,并希望将一些宏嵌入其中。下载了Word的自定义UI编辑器后,我使用“插入/示例XML /自定义选项卡”功能添加了一个自定义选项卡(富有想象力地称为“宏”),上面有三个新按钮;然后我编辑了XML,为每个按钮分配了一个不同的格式化宏。这很好用,我很满意。
但是我现在想要在我的新标签中添加第四个按钮(和相应的宏)。在自定义UI编辑器中再次打开文档后,我发现当我尝试向现有的新选项卡添加第四个按钮时,我会得到另一个全新的选项卡(“宏2”,如果您愿意)包含原来的三个新按钮,第四个。所以我有两个同名的新标签,一个有三个按钮,一个有四个。
我做错了什么?如何改进我的工作方式/使用不同的XML来避免这个问题?如果它有帮助,我已经发布了我用于原始三个按钮的XML,但我希望我在某个地方犯了一个非常基本的错误,有人能指出我正确的方向。我搜索了这个网站(以及其他许多网站),但没有设法找到正在发生的事情和原因的解释。
用于原始三个按钮的代码(全部一次创建)
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
<ribbon startFromScratch="false">
<tabs>
<tab id="customTab" label="Macros">
<group id="customGroup" label="Formatting Macros">
<button id="customButton" label="Extract acronyms" imageMso="TextEffectShadowGallery" size="large" onAction="ExtractACRONYMSToNewDocument2" />
<button id="customButton2" label="Format sentence spacing" imageMso="TextEffectTracking" size="large" onAction="FormatSentenceSpacing" />
<button id="customButton3" label="Format current table" imageMso="TableSelectCell" size="large" onAction="FormatCurrentTableInHouseStyle" />
</group>
</tab>
</tabs>
</ribbon>
</customUI>
代码我正在使用尝试向功能区添加第四个按钮(但它会创建一个全新的选项卡,而不是仅仅向现有的新功能区添加按钮)
<button id="customButton4" label="Format current table" imageMso="UseThisImage" size="large" onAction="FormatTableMacro" />
我已经尝试过a)在Custom UI窗口中将新按钮XML添加到现有XML的底部(这导致上面描述的新选项卡问题),以及b)从窗口中删除所有现有XML并键入只有新按钮的XML(不起作用,仍然有一个全新的选项卡!)
谢谢大家......
答案 0 :(得分:1)
XML对于什么可以在哪里有非常严格的规则:层次结构非常重要。
对于Ribbon XML,所有内容都必须嵌套在<customUI>
和<ribbon>
标记对中(并按此顺序)。所以如果你试图把别的东西放在外面&#34;其中,自定义用户界面编辑器正在努力避免您在使用该XML并为您制作新标签时遇到的错误。 (很酷,我不知道会这样做!)
按钮的层次结构状态非常低 - 因此必须在<tabs>
和<tab>
内嵌套(至少)。由于您要对按钮进行分组,因此它也必须位于<group>
对标记内。
您可以编辑自定义UI编辑器向您显示的XML。按照以下步骤创建第四个按钮:
</group>
代码前点击现有 XML。