我有一个带有4个图像控件的MS Access报表。在“详细信息”部分的“格式”事件中,我有基于中字段值设置picture属性的代码。
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。