我在MS Access中有一个包含4个图像控件的报告。在详细信息部分的格式事件中,我有代码根据DAO.recordset
中的字段值设置图片属性。下面是我的代码示例。
For i = 0 To 3
If Not rs.EOF Then
Me.Controls("img" & i).Picture = blobGet(rs!phBlobId)
rs.MoveNext
Else
Me.Controls("img" & i).Picture = ""
End If
Next i
基本上rs!phBlobId
字段是文件名。 blobGet
函数返回图片的完整路径,然后在报告的详细信息部分设置正确控件的图片属性。
我不确定所有原因,但在某些情况下,图片不会显示在控件中。我在表单上有类似的设置,并且在那里没有任何问题,我只在报告时遇到问题。
似乎可能是原因之一是图片的大小。如果我插入一张大图片(比如超过5兆),它有时候就不会出现了。随着不同组合的图片出现不同的。
我对上述问题的解决方案和如何在报告上显示这些图片的其他想法持开放态度。一个绝对的要求是图片可以用VBA设置,因为图片的确切排列根据不相关的变量而变化。