作者:绿色风
分类:
时间:2022-08-17
浏览:163
楼主 biaotiger1 |
dialogBoxLauncher是一个小的、几乎看不见的、能够在组中使用的“小玩意”。在界面上是一个带有箭头的小正方形,位于组的右下角。 在大多数情形下,dialogBoxLauncher通过启动内置对话框,提供给用户更多的选项。当然,您也可以创建自已的用户窗体,提供给用户额外的选项或者帮助文档。 1、dialogBoxLauncher元素必需和可选的属性 dialogBoxLauncher元素没有任何必需的和可选的属性,其依赖于拥有属性的子对象。 2、dialogBoxLauncher元素允许的子对象 dialogBoxLauncher是一个容器,因此不仅接受子对象,而且需要子对象实现功能。dialogBoxLauncher必须具有且仅有一个按钮作为其子对象。实际上,按钮的作用是启动应用程序对话框。 3、dialogBoxLauncher元素的父对象 使用dialogBoxLauncher的唯一的地方是组。 4、dialogBoxLauncher元素使用示例 在UI中,有三种不同的方式实现dialogBoxLauncher: n使用Microsoft已经使其可用的缺省的对话框启动器之一 n创建自定义启动器来使用Microsoft的其它对话框之一 n创建自定义启动器来启动自定义用户窗体 内置的对话框启动器 在自定义组中添加对话框启动器最简单的方式是使用Microsoft内置的对话框启动器按钮作为其子对象。 (1)创建一个新的.xlsx文件,并将其保存为Excel dialogBoxLauncher Example.xlsx。 (2)关闭该文件并在CustomUI Editor中打开。 (3)输入下列XML代码:
- <customUI xmlns=“http://schemas.microsoft.com/office/2006/01/customui“>
- <ribbon
- startFromScratch=“false“>
- <tabs>
- <tab id=“rxtabDemo“
- label=“Demo“
- insertBeforeMso=“TabHome“>
- <group id=“rxgrpTest“
- label=“Test“>
- <box id=“rxboxFormat“>
- <comboBox idMso=“Font“ />
- <comboBox idMso=“FontSize“ />
- </box>
- <dialogBoxLauncher>
- <button idMso=“FormatCellsFontDialog“/>
- </dialogBoxLauncher>
- </group>
- </tab>
- </tabs>
- </ribbon>
- </customUI>
注意,dialogLauncher仅仅是包含一个按钮的壳。使用dialogBoxLauncher的技巧是确保使用了正确的内置对话框按钮。(4)保存后关闭CustomUI Editor。(5)在Excel中重新打开该文件,单击“Test”组右下角的对话框启动器,结果如下图所示。 使用内置对话框的自定义对话框启动器(1)创建一个新的.xlsm文件,并将其保存为Excel dialogBoxLauncher Example1.xlsm。(2)关闭该文件并在CustomUI Editor中打开。(3)输入下列XML代码:- <customUI xmlns=“http://schemas.microsoft.com/office/2006/01/customui“>
- <ribbon
- startFromScratch=“false“>
- <tabs>
- <tab id=“rxtabDemo“
- label=“Demo“
- insertBeforeMso=“TabHome“>
- <group id=“rxgrpTest“
- label=“Test“>
- <box id=“rxboxFormat“>
- <comboBox idMso=“Font“ />
- <comboBox idMso=“FontSize“ />
- </box>
- <dialogBoxLauncher>
- <button id=“rxb**ialog“
- onAction=“rxb**ialog_click“
- screentip=“Launch Dialog“/>
- </dialogBoxLauncher>
- </group>
- </tab>
- </tabs>
- </ribbon>
- </customUI>
注意,没有与按钮相关的图像。即使您提供了按钮图像,它也会被对话框启动器图像覆盖。(4)生成回调签名并复制,保存后关闭CustomUI Editor。(5)在Excel中重新打开该文件,打开VBE,插入一个新模块,粘贴回调签名代码。(6)编写回调代码:- ‘rxb**ialog onAction回调
- Sub rxb**ialog_click(control As IRibbonControl)
- Application.Dialogs(xlDialogFormatFont).Show
- End Sub
编写代码较困难的是找到合适的对话框常量(本例中为xlDialogFormatFont),您可以使用对象浏览器或者智能感知功能来查找。(7)关闭工作簿后重新打开。单击“Test”组右下角的对话框启动器,将出现“字体”对话框。当然,您也可以修改回调代码中的对话框常量,调用其它对话框。使用自定义用户窗体的自定义对话框(1)创建一个新的.xlsm文件,并将其保存为Excel dialogBoxLauncher Example2.xlsm。(2)关闭该文件并在CustomUI Editor中打开。(3)输入下列XML代码(即沿用前一示例):- <customUI xmlns=“http://schemas.microsoft.com/office/2006/01/customui“>
- <ribbon
- startFromScratch=“false“>
- <tabs>
- <tab id=“rxtabDemo“
- label=“Demo“
- insertBeforeMso=“TabHome“>
- <group id=“rxgrpTest“
- label=“Test“>
- <box id=“rxboxFormat“>
- <comboBox idMso=“Font“ />
- <comboBox idMso=“FontSize“ />
- </box>
- <dialogBoxLauncher>
- <button id=“rxb**ialog“
- onAction=“rxb**ialog_click“
- screentip=“Launch Dialog“/>
- </dialogBoxLauncher>
- </group>
- </tab>
- </tabs>
- </ribbon>
- </customUI>
(4)生成回调签名并复制,保存后关闭CustomUI Editor。(5)在Excel中重新打开该文件,打开VBE,插入一个新模块,粘贴回调签名代码。(6)插入一个新的用户窗体,在其中添加标签和按钮。修改标签和按钮,如下图所示。 添加按钮单击事件:- Private Sub CommandButton1_Click()
- Unload Me
- End Sub
表明当单击按钮后卸载用户窗体。(7)编写回调代码,使用户单击对话框启动器时启动自定义的用户窗体:- ‘rxb**ialog onAction回调
- Sub rxb**ialog_click(control As IRibbonControl)
- UserForm1.Show
- End Sub
(8)关闭工作簿后重新打开。单击“Test”组右下角的对话框启动器,将显示刚才自定义的用户窗体。 |
2楼 水吉果果 |
学习****** |
3楼 水星钓鱼 |
感谢分享,学习 |
4楼 芐雨 |
来学习一下 |
5楼 海洋之星 |
标哥这是啥 |
免责声明
有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素,
经与ExcelTip.Net站长Apolloh商议并征得其同意,
现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示,
供有需要的人士查询使用,也慰缅曾经的论坛时代。
所示各个帖子的原作者如对版权有异议,
可与本人沟通提出,或于本站点留言,我们会尽快处理。
在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一