Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access2010/2013/2016/2019/2021

彻底玩转MS ACCESS 2016功能区编程设计(01)

时 间:2018-03-09 11:19:11
作 者:Big Young   ID:252  城市:襄阳
摘 要:    初步掌握MS Access功能区设计的整个流程。
正 文:

初步掌握MS Access功能区设计的整个流程

一、简单了解功能区

Microsoft Office Access(也称为Microsoft Access)是由微软发布的关桌面关系数据库管理系统。它结合了Microsoft Jet/ACE Database Engine和图形用户界面两项特点,是Microsoft Office的成员之一。

199211Microsoft发布了Access 1.0,随后不断升级,功能越来越强大。从1.02003的各个版本的Access的用户介面都是采用传统Windows的菜单加工具栏的模式,随着版本的升级,功能的不断增多,菜单系统越来越复杂并难以使用。于是从Access 2007开始Microsoft引入了一种新的用户介面Ribbon,中文译为功能区

功能区是新的 Microsoft Office Fluent 用户界面的一个组件,它是一个横跨程序窗口顶部的条形带,其中包含多组命令。Office Fluent 用户界面是 Microsoft Office Access 2007 中存放各个命令的单一位置,同时也是 Access 早期版本中的菜单和工具栏的主要替代部分。

当我们利用MS Access开始构建应用程序解决方案时,就会遇到自定义Office Fluent功能区的问题。通过自定义应用程序解决方案的功能区,合理地组织与用户交互的命令介面,以便轻松地使用我们的应用程序解决方案。例如,我们可以隐藏一些或所有默认选项卡,以便用户不能使用某些命令,并且可以创建新的、自定义选项卡包含我们希望其成为可用的命令。

在运用MS Access开发应用程序解决方案时,我们可以使用可扩展标记语言 (XML)来自定义功能区,通过创建自定义XML并添加代码、设置Access启用我们使用XML定义的功能区。我们也可以利用XML来修改系统默认的功能区,通过隐藏或禁用现有选项卡或命令,并添加新选项卡、命令组和命令,把系统默认的功能区改造成适合我们的解决方案的个性化的功能区。

本系列教程以MS Access 2016为平台,通过具体的实例,带领大家深入地研究MS Access程序开发设计中的功能区设计开发问题,使大家熟练掌握功能区的开发设计的高级技巧,使我们的应用程序解决方案更上一层楼。

二、自定义功能区的准备

前面说过在MS Access中要自定义功能区,必须通过XML来定义并创建RibbonX文档。在应用方案开发的过程中,我们可以在多个位置存储编写的XML,但最简单的方法是将其存储在当前数据库的系统表中。我们可以在数据库中创建一个名为USysRibbons的表,将定义功能区的XML放入其中,然后指定自定义功能区是否显示应用为整个数据库的功能区,或者将自定义的功能区指定为某个特定窗体或报表的功能区。我们也可以定义多个功能区——一个应用于整个应用程序解决方案,其它的分别为数据库程序内用户窗体或报表的功能区。

1、在导航窗格中显示系统表

由于USysRibbons是系统表,默认情况下,系统表不会显示在导航窗格中,因此,如果我们要查看或修改表中的内容就必须首先更改导航选项对话框中的设置。

使用以下过程︰

1Access中打开数据库,右键单击导航窗格的空白处或其顶部的标题栏,然后在弹出的快捷菜单上单击导航选项

2)在导航选项对话框中,在显示选项中勾选显示系统对象复选框,然后单击确定。

通过这几步操作后,在导航窗格中就会显示系统表的名称,我们就可以看到自己创的USysRibbons表了,这样通过导航窗格我们就可以对它进行访问了。

2、启用加载项用户介面错误消息的显示

在自定义功能区时要编写XML语句,通过它来定义功能区。在编写过程中难免会出现错误,通过错误消息我们就可以诊断出错误的类型及出现的位置,因而让Access为我们提示错误信息是必要的。默认情况下Access是不提示这类错误信息的,为了能让Access帮助我们诊断XML语法及定义错误,我们就必须启用加载项用介面口错误消息的显示。

使用以下过程︰

1)单击开始选项卡,然后单击选项命令。

2)在打开的“Access 选项对话框中,先选择左侧的客户端设置

3)然后在右侧的更改客户端设置项中找到常规一栏,在常规栏下选择显示加载项用户介面错误复选框,然后单击确定。

三、创建USysRibbons系统表

现在我们来创建存储自定义功能区的XML语句的USysRibbons系统表。实现步骤如下:

1)打开MS Access 2016,创建一个名为“RibbonX-01”的数据库。

2)在功能区的创建选项卡上的表格命令组中选择命令。其实,如果刚创建数据库又没进行其它操作,这一步是不需要的。

3)在上下文选项卡表格工具字段子卡的视图命令组中选择设计视图命令。

4)在弹出的另存为对话框中的表名称文本框中填入“USysRibbons”,然后确定

5)在设计视图中向表添加相关字段,如下表,请务必完全如下所示键入字段名称。

字段名称

数据类型

字段大小

ID

自动编号

长整型

RibbonName

短文本

255

RibbonXml

长文本

 

如果需要,我们还可以在此表中添加更多字段,如Comments字段来描述功能区的XML语句以及它所需要的回调函数等信息。

6)选择“ID”字段。在设计选项卡的工具组中,单击主键。(其实这一步系统已替我们完成了。)

7)在快速访问工具栏中,单击保存,或按CTRL + S快捷键保存“USysRibbons”表。

四、将自定义功能区的XML添加到USysRibbons表中

1)在数据表视图中打开USysRibbons表。

2)按下表的样式向表中添加剂相关的内容。

ID

RibbonName

RibbonXML

(自动编号)

我的选项卡

3)关闭USysRibbons表,然后关闭并重些打开数据库。

4)在数据库工具选项卡上选择“Visual Basic”命令,启动VBA编程器。

5)在VBA集成编程环境(VBE)的主菜单上选择工具菜单的引用命令,以打开对象引用对话框。

6)在对象引用对话框中勾选择“Microsoft Office 16.0 Object Library”项,以添加对Office对象库的引用。这一点很重要,不然没法解析功能区对象及其行为。

7)再选择插入菜单上的模块命令,在VBE中插入一个新的标准VBA模块。

8)在打开的模块窗口中键入如下代码:

Option Compare Database

Option Explicit

 

Sub ShowInfo(control As IRibbonControl)

    MsgBox "Hello World! 您好,世界!"

End Sub

9)单击工具样中的保存按钮,并在弹出的另存为对话框架的模块名称栏填入“modRibbon”并确认后关闭VBE窗口。

五、应用自定义的功能区

现在,自定义功能区的XML已经存储在系统表USysRibbons中,而且相应的回调函数也已编写好了,请执行下列操作将我们定义的功能区应用到整个数据库中。

1)单击系统的文件选项卡,选择其上的选项命令,打开“Access 选项对话框。

2)选择当前数据库,并在右侧找到功能区和工具栏选项栏,然后在功能区名称组合框中选择我的选项卡确定

3)按系统的提示先关闭当前数据库,然后再打开它。重新打开后我们就看到效果了,单击一下我们定义的命令,是不是弹出了定义好的对象框。

至此,我们定义功能区的任务基本完成,是不是很简单呀。
点击下载此附件



Access软件网QQ交流群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助