0

使用 MS Access 2010,我有一个简单的表格,其中包含有关办公楼中房间的基本信息,以及我想在表单上显示的图像的路径 + 文件名和/或该房间的报告。有时(但并非总是)会出现不正确的图像,通常是在房间没有图像条目时。

我已通过在 Form_Current 事件中添加逻辑来更正此表单。但是在 Report_Current 和 Report_Page 事件中添加相同的逻辑时,我会得到随机结果。

看起来打印预览会正确显示图像,但是将打印导出到 XPS 或 PDF 会忽略 Report_Page 和 Report_Current 代码,这与下面的 Form_Current 代码相同。

Private Sub Form_Current()

    Me.ImageHolder.Picture = ""
    If (Me.ImageFilePath.Value <> "") and Dir(Me.ImageFilePath.Value) <> "" Then 
        Me.ImageHolder.Picture = Me.ImageFilePath.Value
    Else
        Me.ImageHolder.Picture = ""

End Sub
4

1 回答 1

0

我认为Report_PageorReport_Current不适合您的代码的事件。Current 事件尤其与报告中的焦点有关,在打印(或保存)时不适用。Page 事件发生得太晚,就在实际打印页面之前。

假设每条记录的详细信息,包括图片,都在报告的详细信息部分,然后双击灰色的详细信息栏以显示其属性。我怀疑OnFormat是你需要的事件。有,OnPrint但我相信这可能为时已晚。(也有OnPaint,但我记得,这是非常具体的,并不经常单独使用。)

于 2013-06-23T22:07:17.973 回答