加载图像会使列表框和文本框闪烁一次
Loading an image makes listbox & textboxes blink once
在 Access 2016 中,我有一个带有列表框的表单,以及一个名为 imgFrame
.
的 图像控件
在列表框中单击文件名时,将显示图像。列表框的 Click
事件的代码是:imgFrame.Picture = "c:\path\filename.jpg"
此行运行时,图像会加载,但图像控件(和表单上的任何文本框) 一次。 (命令按钮不会眨眼。)
屏幕截图(慢动作)
我试过像这样用 Application.Echo 填充:
Sub showImg_pic(fName)
Application.Echo False
imgFrame.Picture = fName
DoEvents
Application.Echo True
End Sub
并以相同的方式对 imgFrame.Visible
进行了实验,但没有发现任何差异。
在将 ControlSource 属性 添加到图像控件之前,Access 2003 需要代码设置图片 属性。
我从未使用过图片属性。我使用 ControlSource 属性 在 Image 控件中动态加载图像。它可以引用包含图像文件的附件类型字段,但嵌入文件会显着增加数据库大小,更快地达到 2GB 访问文件大小限制。因此,也可以引用具有外部位置的完整图像路径或部分路径的文本字段,并使用表达式来构造完整路径。没有 VBA 代码。不眨眼。
="C:\your folder path\" & [listbox name]
使用任意字段构造图像文件名:
="C:\your folder path\" & [EmployeeID] & ".jpg"
如果图像位于数据库旁边的文件夹中:
=CurrentProject.Path & "\Images\" & [listbox name]
如果图像位于中央服务器位置,请使用 UNC 路径:
="\servername\path\Images\" & [listbox name]
在 Access 2016 中,我有一个带有列表框的表单,以及一个名为 imgFrame
.
在列表框中单击文件名时,将显示图像。列表框的 Click
事件的代码是:imgFrame.Picture = "c:\path\filename.jpg"
此行运行时,图像会加载,但图像控件(和表单上的任何文本框)
屏幕截图(慢动作)
我试过像这样用 Application.Echo 填充:
Sub showImg_pic(fName)
Application.Echo False
imgFrame.Picture = fName
DoEvents
Application.Echo True
End Sub
并以相同的方式对 imgFrame.Visible
进行了实验,但没有发现任何差异。
在将 ControlSource 属性 添加到图像控件之前,Access 2003 需要代码设置图片 属性。
我从未使用过图片属性。我使用 ControlSource 属性 在 Image 控件中动态加载图像。它可以引用包含图像文件的附件类型字段,但嵌入文件会显着增加数据库大小,更快地达到 2GB 访问文件大小限制。因此,也可以引用具有外部位置的完整图像路径或部分路径的文本字段,并使用表达式来构造完整路径。没有 VBA 代码。不眨眼。
="C:\your folder path\" & [listbox name]
使用任意字段构造图像文件名:
="C:\your folder path\" & [EmployeeID] & ".jpg"
如果图像位于数据库旁边的文件夹中:
=CurrentProject.Path & "\Images\" & [listbox name]
如果图像位于中央服务器位置,请使用 UNC 路径:
="\servername\path\Images\" & [listbox name]