2
我在MS Access中有4個圖片控件的報告。在detail部分的格式事件中,我有代碼根據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設置圖片,因爲圖片的確切排列基於不相關的變量而變化。
我發現從報表細節的OnFormat事件中查找記錄集中的內容非常非常奇怪。我傾向於將數據放入報告的記錄源中。如果它是不相關的表,無關緊要 - 將它放入沒有連接的記錄源中,並將所需的字段放入記錄源中,並且它們始終可供您使用。 – 2010-10-29 23:27:19
我同意,這很奇怪!我這樣做的原因是圖片控件的佈局非常具體,它們在垂直和水平方向上重疊。我試圖完成的是誠實地將Access幾乎擴展到桌面出版程序中。我不會推薦任何其他人嘗試它,它不是很有趣。 ;) – Icode4food 2010-11-01 12:20:58
有時,增加Windows虛擬內存有助於Access報告不顯示圖像。 – MaxD 2012-05-21 07:59:54