Access 2007中的UI定制
Access 2007中RibbonX定制在一些方面与其它Office应用程序定制的方法相同,但有一些重要的不同。与其它的应用程序一样,通过使用XML标记来自定义Access中的Fluent UI,可以使用包含XML标记或COM加载项的外部文件整合Ribbon定制到应用程序中。然而,与其它Office应用程序不同的是,因为Access数据库文件是二进制的并且不能作为Office Open XML格式文件打开,不能通过添加部件到数据库文件中来自定义Access Ribbon。
在自定义Fluent UI方面,Access是灵活的。例如,定制标记可以存储在表中、嵌入到VBA过程中、存储在其它的Access数据库中、或者从Excel工作表中链接。也可以为整个应用程序指定自定义UI,也可以只指定窗体和报表。
下面介绍如何自定义Access UI。
注意:因为所介绍的内容将修改数据库,因此应在非正式的数据库中执行这些步骤,或者使用示例数据库的副本。
(一) 在Access中自定义Fluent UI
在自定义Access UI时,有两种选择:可以将定制存储在特定的表中并使Access自动装载标记,或者可以将定制存储在您选取的位置并通过调用Application.LoadCustomUI方法手动装载该标记。
如果选择让Access装载定制,则需要将它们存储在名为USysRibbons的表中。该表至少有两列:一个255个字符的名为RibbonName的Text列和一个名为RibbonXML的Memo列。将Ribbon名称放置在RibbonName列中,将Ribbon标记放置在RibbonXML列中。关闭并重新打开该数据库后,在Access的属性对话框中选择默认的Ribbon来使用。当所选择的任何窗体或报表作为其属性时,可以选择显现的Ribbon。
如果决定使用更动态的技术,可以调用LoadCustomUI方法,它装载Ribbon定制而不管是否XML内容被存储在表中。通过调用LoadCustomUI装载定制之后,可以编程在运行时赋值所命名的定制。
注意:通过使用LoadCustomUI方法装载的定制仅在数据库开启时可用。每次打开数据库时必需调用LoadCustomUI。在需要运行时编程赋值自定义UI时,该技术是有用的。
LoadCustomUI方法的签名如下:
Expression.LoadCustomUI(CustomUIName As String,CustomUIXML As String)
Expression返回一个Application对象。
CustomUIName是与该标记相联系的自定义Ribbon ID的名称。
CustomUIXML包含XML定制标记。
使用LoadCustomUI方法的示例参见本指南后面的部分。
下面的过程以一种概括的方式描述如何在Access中添加应用程序级的定制,稍后提供完整的介绍。
(二) 在设计时应用定制的应用程序级Ribbon
1、创建一个名为USysRibbons的表,其中包含前面所描述的列,为想要的每个不同的Ribbon添加行。
2、关闭并重新装载数据库。
3、单击“Office按钮”,然后单击“Access选项”。
4、在“功能区和工具栏选项”中单击“当前数据库”选项,单击“Ribbon名称”下拉列表,并单击其中的一个Ribbon。
要移除一个已存在的定制(以便数据库使用默认的Fluent UI),则从Ribbon名称列表中删除已存在的Ribbon名称,并使该Ribbon的名称为空值。
下面的过程以一种概括的方式描述如何在Access中添加窗体级的定制或报表级的定制。
(三) 赋一个指定的自定义Ribbon到窗体或报表中
1、下面的过程介绍通过添加先前的USysRibbons表使自定义Ribbon对应用程序可用。
2、在设计视图下打开窗体或报表。
3、在“设计”选项卡中,单击“属性表”。
4、在“属性”窗口里,在“其它”选项卡中,单击“Ribbon名称”下拉列表,然后单击其中一个Ribbon。
5、保存并关闭,然后重新打开该窗体或报表,则将显示所选择的UI。
注意:显示在Fluent UI中的选项卡是附加的,也就是说,除非明确地隐藏选项卡或设置StartFromScratch属性为True,除了已存在的选项卡外,还将显示在窗体或报表的UI中的选项卡。
要进一步研究这个过程,详见随后的示例。
这个示例的第一部分设置一个选项,报告装载自定义UI时已存在的任何错误。(虽然您是在Access中执行这些步骤,但您也可以在其它的应用程序中执行相似的步骤)
相关文章
同类最新