关闭并重新打开数据库后,访问2016链接图片路径丢失

时间:2017-09-12 22:42:15

标签: vba forms image ms-access

1个主要表单,包含2个子表单: 第一个子表单,数据表视图:员工列表;第二个子表单,单个表单视图:联系人详细信息和照片。

frmContactDetails有一个图像(使用design> controls> image插入),contolsource链接到员工照片路径。

frmEmployee,On Current事件:requery frmContactDetails。

我在image.picture属性中链接了一张空白照片。

一切运作良好,我可以选择任何员工,并根据当前记录查看所有优惠和照片更新。我可以做一个紧凑的修理,重新打开主窗体,它仍在工作。

问题:当我关闭并重新打开数据库时,照片不再更新。在设计视图中,image.picture属性仍会在字段中显示完整的空白照片路径,但是当我clic to 3点按钮,它没有到达包含这张照片的文件夹。我需要再次设置正确的路径,保存并重新打开表单以使其再次工作。

我一直试图找到解决方案几个小时没有成功。

frmEmployee记录来源:

SELECT tblEmployee.Email, tblEmployee.EmployeeName FROM tblEmployee;

frmEmployee OnCurrent事件:

Private Sub Form_Current()
Me.Parent.txtEmployeeEmail.Value = Me.Email
Me.Parent.frmContactDetail.Requery
End Sub

frmContactDetails记录来源:

SELECT tblPhotos.Email, tblPhotos.PhotoName
FROM tblPhotos
WHERE (((tblPhotos.Email)=[Forms]![frmMain]![txtEmployeeEmail]));

frmContactDetails图片:控件来源:PhotoName,图片类型:已链接,尺寸模式:剪辑,图片属性:

C:\Users\UserName\Desktop\test\BlankImage.bmp

你对可能出现的问题有所了解吗?

其他信息:

所有图片均为.png格式(BlankImage.bmp除外)。我发现了一段代码,用于在我的自定义功能区中加载.png图像,效果很好。图片存储在临时文件夹的子文件夹中。我认为这段代码使用API​​,这对我来说太复杂了:我试图使用相同的函数将图像加载到表单中而没有成功。在tblEmployee中,有一个带有.png照片的附件。起初,我尝试将Image控件链接到此附件,但它不显示照片。然后我复制图像在临时文件夹的文件夹内,并使用.Picture属性在图像控件内显示照片。我使用PhotoName向Tbl Employee添加了一个Field。表单中的文本框链接到此字段,然后使用Environ(“temp”)\ photofolder [PhotoName] .png重新创建完整路径。如果.Picture中没有路径(在设计视图中),则设置为(无)并且不刷新图像控件。我在设计视图中给出了BlankPhoto的路径,然后在使用表单时正确更新了所有内容。问题是如果我关闭Access并重新打开它,BlankPhoto路径仍然可以在.Picture中看到,但当我点击三个点按钮时,文件选择器在Document文件夹中启动(路径丢失),并且照片无法正确更新。

什么是正确的方法?

0 个答案:

没有答案