图像不会出现在图像控制中

时间:2010-10-29 16:14:48

标签: ms-access vba image

我在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设置,因为图片的确切排列根据不相关的变量而变化。

1 个答案:

答案 0 :(得分:2)

我想出的解决方案是使用imageMagick简单地调整图像大小。这实际上为我提供了一些优势。其中最重要的是性能提升,因为我处理的是较小的图像。