【问题标题】:Microsoft ACCESS doesn´t show photo in formMicrosoft ACCESS 不在表单中显示照片
【发布时间】:2018-12-18 03:36:25
【问题描述】:

我正在创建一个显示所有员工信息的表单,包括他们的照片。

在设计视图中,我尝试使用图像控件并在其控件源中进行定义。

但是,当我更改为表单视图并浏览员工记录时,他们的照片并未显示。

我尝试将字段(存储照片的位置)数据类型更改为文本,而不是超链接(如此 youtube 视频中所示:https://www.youtube.com/watch?v=f5ZOOMrDjtU),但照片仍然没有出现。

照片存储为超链接,显示文件路径,如果我在表格的数据表视图中,我可以单击员工照片超链接并打开他们的照片。

另外,在访问选项中,我选择了这个图片属性存储格式:,图片是jpg文件。

有人知道我该如何解决这个问题吗?我做错了什么?

谢谢。

【问题讨论】:

  • Access 中的真正超链接由以# 字符分隔的3 部分组成。这在图像控件中不起作用。您是简单地将超链接字段转换为文本类型,还是将数据作为完整路径字符串重新输入?将 ControlSource 设置为带有文件路径的字段的图像控件对我有用。
  • 我已经从照片中删除数据,将数据类型更改为文本并重新输入数据。删除并向表单添加了一个新的图像控件,它可以工作。谢谢!
  • @June7 考虑将其添加为答案。它肯定与那个链接的问题不同,它是这个问题的有效答案。

标签: ms-access hyperlink photo


【解决方案1】:

Access 中的真正超链接由 3 个部分组成,以 # 字符分隔。
display text # file name # any reference within the file
更多信息http://allenbrowne.com/casu-09.html

超链接结构在 Image 控件的 ControlSource 属性中不起作用,并且不能简单地将超链接字段转换为文本类型,因为生成的字符串不是有效的文件路径。手动输入正确的图像文件路径或使用字符串操作代码从超链接字段中提取文件路径部分并保存到文本字段(x 表示字段名):
Mid(Left(x,InStrRev(x,"#")-1),Instr(x,"#")+1)

再想一想,该表达式可能位于 ControlSource 属性中,因此可以按原样保留超链接字段,并且不需要文本字段。

有关 ControlSource 属性中表达式的更多信息:Access Form: `abc.Picture="xyz.jpg"` makes listbox & textboxes "blink" once

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多