问题标签 [ribbonx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
vsto - 当有人单击选项卡时刷新 Excel 2010 中的自定义功能区选项卡
我一直在使用 VSTO(使用 VB.net 和 XML)编写自定义功能区,并且我编写了许多按钮,其标签和按下状态取决于 Excel 所处的计算模式。
getPressed 和 getLabels 回调函数检查 excel 计算模式,但仅在首次加载功能区或单击按钮时调用。如果有人要进入“公式”选项卡,更改计算模式,然后返回自定义功能区选项卡,此自定义选项卡中按钮上的按下状态和标签现在将不正确。
当有人单击 Excel 中的自定义功能区选项卡时,有没有办法触发这些回调函数被调用(例如调用ribbon.invalidate() 函数的方法)?
excel - Excel 2007 带子菜单的功能区拆分按钮
我的功能区中有一个简单的拆分按钮。在它下面的菜单中有两个按钮。它运作良好。现在我想将第一个按钮 -button id="rxBtn_CreateDataFiles" - 扩展为更多选项,并让另一个子菜单向右扩展两个选项。
它的语法是什么?谢谢。
vsto - 如何知道您的选项卡何时在 Office 功能区上被选中
我有一个插件(excel 2013 VSTO 4.0 .NET 4.0),它有一个自定义选项卡。在此选项卡中,我有一个下拉控件,其中加载了很多图像。目前,这些图像正在 RibbonLoad 事件中加载。当然,缺点是我的插件可能需要很长时间才能加载,导致插件加载缓慢,导致 Excel 禁用我的插件。
是否有任何事件或任何方式可以延迟加载下拉项目,直到有人选择我的选项卡。我找不到任何表明有人单击了我的自定义选项卡的事件。
c#-4.0 - Outlook 2013 加载项功能区 XML 每次打开电子邮件时如何执行一些代码?
我已经在 Ribbon.xml 文件中尝试了 getEnabled 和 getVisible 回调,但并不是每次打开电子邮件时都会调用它们。我也尝试订阅 Outlook NewInspector 事件,但仅在第一次打开电子邮件时执行。我还有其他方法可以尝试吗?
vba - 代码运行时未调用 Excel VBA 功能区 getEnabled
我有一个运行很长时间的 Excel VBA 宏(可能几天,它执行数据采集)。它最初是为 Excel 2003 编写的,具有自定义工具栏和菜单。我最近将它更新为使用 RibbonXML 的功能区界面。
当宏运行时,我想禁用一些界面元素(例如“开始测试”),并启用其他元素(例如“停止测试”按钮。)
我遇到的问题是,仅在宏代码运行完成后才处理对ribbon.invalidate 的调用。
您可以通过一个简单的测试程序很容易地看到这种效果
功能区“getEnabled”回调中的 debug.print 将被视为仅在 5 秒睡眠结束时执行。
有什么方法可以强制使用ribbon.Invalidate 然后在那里激活?
:: 编辑 1 ::
我创建了一个小型演示工作簿来说明问题: http: //www.bodgesoc.org/Button_Demo.xlsm
:: 编辑 2 ::
另一个论坛的成员找到了一个解决方案,尽管它有点难看。我想这现在可以标记为“已回答”,但更优雅的解决方案将不胜感激。
xml - Excel 2013ribbonx xml:CustomUI 工作正常,但生成的按钮拒绝运行我的宏
使用 customUI 工具将选项卡添加到 Excel 2013 xlsm 工作簿。我正在运行 Windows 7。CustomUI 给了我绿灯(“自定义 UI XML 格式正确!”),并生成回调代码。打开工作簿时会出现新选项卡、新组和新按钮。我将回调代码添加到 VBA 中的 module1。但是当我点击新按钮时,我收到了消息
“无法运行宏 'AddNodeNew'。此工作簿中可能没有该宏,或者所有宏都可能被禁用。”
好吧,宏 AddNodeNew 可用,并且宏未被禁用。那么发生了什么?注意:xlsm 工作簿已经包含许多其他宏(没有一个名为 AddNodeNew)。
我想在此处包含代码,但您的系统不允许我 - 一直告诉我我没有将其正确格式化为代码。但是我确实按它要求的 4 个空格缩进了所有内容,但仍然没有骰子。关于这个主题的帮助不足。
vba - MS Word 和 RibbonX 错误(参数数量错误...)
我正在尝试向 Word 功能区添加一个额外的选项卡,并有几个按钮来调用我自己的宏。我用 Excel 做了同样的事情,效果很好。由于某种原因,我无法让它在 Word 中工作。我正在使用自定义 UI 编辑器。这是功能区代码。
只是一个非常简单的选项卡,带有一个调用宏 Callback() 的按钮。
我使用以下代码向 Word 文件中添加了一个模块。
该宏在其一个上运行良好(点击编辑器中的播放按钮)但是当通过选项卡上的按钮调用时,我收到以下错误:
编辑:它似乎与 1)对模块的公共访问和 2)显然宏应该采用一些类似于“控制作为功能区控件”或类似的参数。如果您知道在哪里可以找到相关文档,请告诉我。
vba - Microsoft Word:如何收听文档级事件(保护/取消保护)以更新功能区切换按钮?
PHB 希望我为 Microsoft Word 创建一个功能区切换按钮:
- 按下时,将编辑限制为填写表格并在没有密码的情况下保护文档。
- 未按下时,取消保护文档(无密码)。
我有以下 customUI.xml:
和以下 VBA 代码:
我可以重新调整内置 ProtectOrUnprotect 命令的用途,以便相应的内置按钮使功能区无效并因此更新我的自定义按钮,但如果我使用内置任务窗格(查看 > 限制编辑)或以编程方式(ActiveDocument.保护/取消保护),我的自定义按钮对更改一无所知。如何收听文档级事件以保护/取消保护,以便更新切换按钮的状态?
excel - .xlsm 中的 Excel 2010 自定义功能区可见性
我有一个带有自定义功能区的 Excel 2010 工作簿,但功能区仅在我在该工作簿上时可见,而不是在我切换到其他工作簿时可见。
有没有办法改变它并使其在所有工作簿上可见?
我知道我可以将工作簿另存为加载项,最终情况会如此,但在我开发时,能够看到所有工作簿上的功能区对我来说很方便。
谢谢你的帮助
西蒙
c# - 在 VSTO 中从应用程序的其他位置修改 Office 功能区控件状态
我有一个用 XML 而非设计器制作的 VSTO 插件功能区。它上面有一个按钮,我只想在用户处于插件控制的范围内时启用它。
我的回调设置在加载功能区时可以正常工作。
Ribbon1.cs
代码
我捕获了一个工作表更改事件来监视用户在下面的范围。
ThisAddIn.cs
代码
我不能只是从Globals.Ribbon.Ribbon1
我所做的研究中多次建议的那样拿起丝带。使用 XML 设计器不会授予此功能。
将我的工作表监听功能移到功能区似乎需要做很多工作,对我来说,它们属于插件而不是功能区,因为它们为插件提供了其他功能。我可能遗漏了一些明显的东西,但是存在的文档几乎不存在。除了提问者或回答者没有得到的一堆论坛问题。
TLDR:从不属于功能区类的代码更改属性并使 RibbonX 控件无效。