我有一个Image对象。 我将图片类型设置为链接,因此我可以根据需要更改图片。 我将Picture属性设置为图片名称。
我认为访问将使用relitive寻址并在当前目录中查看图像。但它没有,我得到一个错误,告诉我它找不到图片。
有人有解决方案吗? (除了将图片类型设置为嵌入或使用完整文件地址?)
谢谢!
更新
试过这个:
Private Sub Form_Load()
Dim file As String
file = CurrentDb().Name
file = Replace(file, ".mdb", ".bmp")
Me.Image46.Picture = file
End Sub
它有效,除了我仍然收到错误消息。我点击O.K.它的工作原理。只需要将错误消息消失即可。
解决方案:使用上面的代码(或下面答案中公布的代码),然后将“图片类型”设置为“嵌入”,然后删除“图片”字段,使其显示“(没有)”。 保存并运行。 它应该工作。
谢谢!
答案 0 :(得分:1)
您可以像这样
在表单OnLoad事件上设置属性Me.imgMy_image.picture=getDBPath & “mypicture.bmp”
这是getDBPath函数
Public Function GetDBPath() As String
Dim strFullPath As String
Dim I As Integer
strFullPath = CurrentDb().Name
For I = Len(strFullPath) To 1 Step -1
If Mid(strFullPath, I, 1) = "\" Then
GetDBPath = Left(strFullPath, I)
Exit For
End If
Next
End Function
在有人评论之前我知道在访问2000及以上版本中你可以使用currentproject.path但是我被困在那个时间忘记所以需要自定义功能的土地上,它仍适用于更高版本的访问
答案 1 :(得分:1)
当前文件夹取决于您在Access中打开数据库的方式。至少,如果通过“文件打开”打开它,当前文件夹将更改为MDB文件的文件夹。但是,如果通过在资源管理器中双击MDB打开它,则不会。