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

[转载]在 Access 2010 应用程序中跨多个窗体和报表使用单个图像

时 间:2014-09-02 08:29:19
作 者:Ken Getz   ID:43  城市:江阴
摘 要:了解如何使用 Microsoft Access 2010 中的图像库来节省空间并替换多个窗体和报表中的图像。
正 文:

适用范围:Microsoft Access 2010

概述

本文介绍了 Access 2010 中的新共享图像库的用法。利用共享图像库,您可以通过跨多个窗体和报表共享图像来节省数据库空间。此外,该图像库还具有一个简化界面。可通过此界面替换项目中的图像。

编码

许多数据库开发人员都会使用共享图像:徽标、脚本、标头等。通常,开发人员会在应用程序中的每个窗体或报表中使用这些图像。在 Access 2010 之前,只要您使用一个图像,Access 就会创建该图像的单独实例。(您在运行时手动编写代码以插入单个图像的情况除外)。可以在 Access 2010 中使用新的图像库,以便能跨多个窗体和报表共享图像。

创建示例数据库

第一步是创建示例 Access 数据库。您将使用此数据库体验新的图像库。

创建示例数据库

  1. 启动 Access 2010。

  2. 在 Access 中,单击“文件”,再单击“新建”

  3. 在可用模板列表中,在“Office.com 模板”下,选择“示例”

  4. 从示例数据库列表中,选择“Northwind 2007”

  5. 选择适当的路径,然后单击“下载”按钮以下载并安装示例数据库的干净副本。

  6. 如果需要,请单击消息栏上的“启用内容”按钮,以在示例数据库中启用 VBA 代码。

  7. 接受“登录对话框”窗体中的默认登录 ID,然后单击“登录”

    此时,您应已下载并安装 Northwind 2007 示例数据库的最新副本。此外,Access 2010 也已加载该数据库。

  8. 关闭默认“主页”窗体。

在窗体中添加和插入图像

在下载并安装示例数据库后,您可以在窗体上添加和插入图像。

使用图像库插入图像

  1. 在“设计视图”中打开“客户详细信息”窗体。

  2. 在“功能区”的“设计”选项卡上的“控件”组中,选择“插入图像”下拉菜单,再选择“浏览”



    图 1. 插入图像

    插入图像
  3. 在“插入图片”对话框中,浏览找到一个图像,并选择该图像以将其插入当前窗体中。

  4. 完成此操作后,单击“打开”

    此操作不仅会将该图像插入窗体中,而且会将该图像插入图像库中。

  5. 再次选择“浏览”菜单项,并确认您添加的图像现在显示为该库的一部分。



    图 2. 该图像显示在库中

    库中的图像
  6. 在窗体中选择该图像,并调查该图像的属性。

    Gg490661.note(zh-cn,office.14).gif注释:
    默认情况下,“图片类型”属性将设置为“共享”。这表明该图像来自图像库。此外,“图片”属性包含所插入的图像的名称。




    图 3. 新插入的图像的图像属性

    新插入图像的图像属性

在报表中重用图像

现在您已将一个图像添加到库中,您可以在任何窗体和报表中重用该图像。

在报表中重用图像

  1. 在“设计视图”中打开“客户电话簿”报表。

  2. 在“功能区”中,单击“插入图像”下拉菜单,然后选择之前添加的图像。

  3. 单击报表的标头,您会看到此操作将插入该图像。

  4. 验证该图像的属性是否与使用窗体时所显示的属性匹配。

探究库存储

Access 将图像存储到一个名为 MSysResources 的隐藏系统表中,您可以轻松找到该表。

查看隐藏系统表

  1. 右键单击导航栏的顶部,然后从快捷菜单中选择“导航选项”

  2. 在“导航选项”对话框中,选中“显示隐藏对象”和“显示系统对象”复选框。



    图 4. 显示隐藏对象和系统对象

    “显示隐藏对象”和“显示系统对象”显示选项
  3. 完成此操作后,单击“确定”

    此时您应看到 MSysResources 表包含在现有表的列表中。

  4. 在导航栏中,双击“MSysResources”表,这会显示与图 5 中所示信息类似的信息。

    显而易见,Access 将图像本身作为附件与文件扩展名、名称和类型一起存储。



    图 5. 查看 MSysResources 表的内容

    MyResources 表的内容

替换图像

在窗体或报表中显示的库中图像的每个实例实际包含对共享图像的引用。因此,您可以轻松地在使用某个图像的所有场合替换该图像,而不必访问每个窗体或报表。

在使用某个图像的所有场合替换该图像

  1. 保存并关闭之前已修改的窗体和报表。

  2. 再次在“设计视图”中打开“客户详细信息”窗体。

  3. 在“设计”选项卡的“控件”组中,单击“插入图像”下拉菜单,右键单击之前插入的图像,然后从快捷菜单中选择“更新”



    图 6. 更新现有图像

    更新现有图像
  4. 在“插入图片”对话框中,选择一个不同的图像,然后单击“打开”以替换现有图像。

    Gg490661.note(zh-cn,office.14).gif注释:
    此操作会立即替换当前窗体中的图像。


  5. 关闭窗体,然后在“设计视图”中打开“客户电话簿”报表。

    您将发现,更改库中的图像的同时还会更改报表中的图像。这将验证更新库中的某个图像的同时是否会在使用该图像的所有场合更新该图像。

重命名图像

Access 通过将图像名称用作关键字来检索库中的图像。同样地,每个共享图像实例将原始图像的名称包含在图像容器的属性中。因此,如果您更改库中图片的名称,则还必须手动更新应用程序中每个图像实例的名称。

重命名图像

  1. 在“设计视图”中打开“客户电话簿”报表后,单击“插入图像”下拉菜单,右键单击在库中添加的图像,然后选择快捷菜单上的“重命名”

  2. 为图像提供新名称,然后单击“确定”

    Gg490661.note(zh-cn,office.14).gif注释:
    请注意,当前一切看上去都很正常。


  3. 关闭报表,然后在“设计视图”中重新打开该报表。

    Gg490661.Important(zh-cn,office.14).gif重要信息:
    该报表无法显示图像,因为它查找的是带旧名称的图像。


  4. 单击图像,然后在“属性”窗口中,通过选择分配给共享图像的名称来修复“图片”属性。

读取

Access 2010 会自行将图像库存储到数据库中。因此,您无需任何其他软件即可使用该库。由于您只为每个图像存储了一个副本,因此便大大减小了数据库应用程序的大小。此外,您可以替换库中的图像以便替换该图像的所有实例。此更改将传播到显示该图像的每个窗体或报表中。因此,您可以使用此工具更轻松地维护应用程序。

请注意,Access 在窗体和报表的“设计”选项卡的“标头/脚本”组中包含一个“徽标”按钮。此“徽标”按钮可将选定图像插入当前窗体或报表的左上角。对于客户端窗体和报表,Access 会将该图像直接存储到窗体中。对于 Web 窗体和报表,Access 会将该图像存储到库中,然后在窗体或报表中放置对该图像的引用。




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

常见问答:

技术分类:

相关资源:

专栏作家

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