我是Access和VBA的新手,我有一个连续的表单,ID字段和同一行上名为'Miniature'的空图片。
要显示每行的图片,我正在使用FormLoad事件
Private Sub Form_Load()
Me.Miniature.Picture = GetDBPath & "miniatures\" & Format(Me.ID, "000") & ".gif"
End Sub
显示图片,但每行都相同,因为'Miniature'是每张图片的名称
我也试过RecordSet,但图片不是字段,所以我不知道如何访问它。
我正在寻找一种方法来实现我想要的目标?我需要使用什么?
答案 0 :(得分:1)
由于我无法找到单独设置每张图片的方法,因此我为表单添加了一个新字段,其中包含图片的绝对路径,并使用了Control Source属性。
无论如何,谢谢你试图帮助
答案 1 :(得分:0)
更新:使用某个事件将无效(请注意,图片的所有代码更改都会导致控件的所有实例都更新)所以我删除了之前的答案。
解决此问题的方法是将表的数据源更改为此类
SELECT CurrentProject.Path & "\" & "miniatures\" & Format(ID,"000") & ".gif" AS ImagePath, * FROM TableName;
然后将图像绑定到ImagePath列。这将导致显示图像,而无需向表中添加实际列。
请记住,对大型表执行此操作将不会有效,因为它会导致每行都出现已计算的表达式
CurrentProject.Path & "\" & "miniatures\" & Format(ID,"000") & ".gif"