楼主 apolloh |
“工欲善其事,必先利其器。”这里,我们先介绍自定义Ribbon的一些工具和资源,以方便后续的RibbonX开发。 可以使用记事本来自定义Ribbon,也可以使用第三方工具更方便地自定义Ribbon。 记事本 Office 2007采用了Open XML文件格式作为新标准,而新的文件实际上是包含着XML文件的压缩文件。XML文件实际上就是文本文件,因此能够使用记事本方便地打开这些文件并修改,从而自定义Ribbon。 显然,使用记事本作为自定义Ribbon的工具不是太方便,需要做很多工作。并且,由于没有提供代码验证,编写XML时很容易发生输入错误。 Microsoft Office 2007 Custom UI Editor Microsoft Office 2007 Custom UI Editor(简称“Custom UI Editor”),是一款用来编辑Open XML文件的小工具,方便实用。此外,该工具还提供了代码验证和其它工具来辅助开发。您可以在下面的站点免费获得该工具: http://openxmldeveloper.org/articles/customuieditor.aspx 在安装Custom UI Editor之前,确保系统中已经安装了Microsoft .Net Framework 2.0及以上版本。下载并解压后,双击OfficeCustomUIEditorSetup.msi即可安装该工具。 在Custom UI Editor中打开对功能区进行定制过的文件,例如上篇文章中的示例文件,如下图1所示。 图1:在Custom UI Editor中打开自定义功能区的Excel文件 打开Custom UI编辑器,您将会看到在工具栏上有5个按钮,如上图1所示。 Open(打开):打开想要编辑以改变其功能区的Excel文件。 Save(保存):保存xml到已在UI编辑器中打开的文件中(注意当该文件已在Excel中打开时不可能在编辑器中保存该文件) Insert Icons(插入图标)):在文件中插入自已的图标(图标将会保存在文件中) Validate(验证):验证xml以便确保没有语法问题 Generate Callbacks(产生回调):为xml中的每个onAction创建宏(回调)。选择所有的回调并将它们复制到工作簿里的标准模块中,然后可以在宏(回调)中的Sub和End Sub行之间插入相应的代码。 细心的读者可能会发现,在图中有很多乱码,那是因为在自定义功能区时使用了中文,而该编辑器目前版本还不支持中文。 与我们在记事本中看到的文本文件相比,在Custom UI Editor中的文件使用了颜色来区分不同的标记文本,并且对代码自动缩排,这些都能很好地帮助阅读和理解代码。同时,该编辑器还能容易地嵌入图片、验证代码、存储通用的代码片断,甚至生成响应回调(Callbacks)的代码框架。(回调,即单击定制的功能区控件时触发的自定义VBA程序。我们将在随后的文章中详细介绍回调) XML Notepad 2007 XML Notepad 2007是另一款用于编辑或编写XML代码的工具,可以从Microsoft的站点免费下载该工具。XML Notepad能够捕捉验证代码的XML架构。 从下面的站点下载并安装XML Notepad 2007: http://www.microsoft.com/downloads/details.aspx?familyid=72d6aa49-787d-4118-ba5f-4f30fe913628&displaylang=en 接着,从下面的站点下载并提取Office 2007 XML架构: http://www.microsoft.com/downloads/details.aspx?familyid=15805380-F2C0-4B80-9AD1-2CB0C300AEF9&displaylang=en 最后,将架构链接到XML Notepad。打开XML Notepad,选择“View-Schemas”,在“XML Schemas”中选择“File-Add schemas”,然后找到要提取的XML架构文件夹,即C:\2007 Office System Developer Resources\Office2007XMLSchema\CustomUI.xsd。如下图2所示,单击“OK”。 图2:添加XML架构到XML Notepad 生成自定义功能区选项卡的XML代码的工作簿 Ron de Bruin Excel 2007内置控件、组和选项卡列表 http://www.microsoft.com/downloads/details.aspx?familyid=4329d9e9-4d11-46a5-898d-23e4f331e9ae 除了XML外,在使用VBA操作功能区控件时,可以使用控件名称。 http://www.microsoft.com/downloads/details.aspx?familyid=12B99325-93E8-4ED4-8385-74D0F7661318 打开该工作簿后,在“开发工具”选项卡中将会添加一个名为“Office Icons”的组,共有9个图标库,单击每个库的下拉按钮后单击一个图标,将会出现带有图标和图标名称的窗体。Excel 2007中的内置菜单 在Excel 2007中,仍然可以创建和使用CommandBar对象,但与以前版本相比,其支持的属性和方法已大为减少。例如,没有控制工具栏大小和位置的属性,没有浮动工具栏。 Excel 2007中的内置图像ID Excel 2003中菜单和工具栏名称及ID编号 Excel97-2003中的命令栏按钮图标及其相应的ID号 列出Excel 2003命令栏清单的实用加载宏 http://skp.mvps.org/faceid.htm 例如,下面的加载宏列出了Excel 97-2003图标及其ID: 关于图标的COM加载项: VSTO http://www.microsoft.com/downloads/details.aspx?familyid=5e86cab3-6fd6-4955-b979-e1676db6b3cb http://www.microsoft.com/downloads/details.aspx?familyid=F5539A90-DC41-4792-8EF8-F4DE62FF1E81 注意,如果Visual Studio 2005安装的是中文版,那么语言应选择简体中文。 Office 2003: Office 2007: http://www.getpaint.net/download.htmlRibbonX相关的网站资源 RibbonX社区: |
2楼 omnw |
老大,此帖中有几个工作簿都没有给出链接,请完善一下! |
3楼 omnw |
感谢老大的修订 |