ms доступ к связанному изображению - PullRequest
0 голосов
/ 06 июля 2010

У меня есть объект Image. У меня установлен тип изображения «Связанный», поэтому я могу изменить изображение, если захочу. У меня в свойстве Picture установлено имя картинки.

Я бы подумал, что для доступа потребуется использовать надежную адресацию и простой просмотр изображения в текущем каталоге. Но это не так, и я получаю сообщение о том, что не могу найти изображение.

У кого-нибудь есть решение? (Кроме установки типа изображения для встроенного или использования полного адреса файла?)

Спасибо!

Обновление:

Попробовал это:

Private Sub Form_Load()
Dim file As String
file = CurrentDb().Name
file = Replace(file, ".mdb", ".bmp")
Me.Image46.Picture = file

End Sub

Это работает, за исключением того, что я все еще получаю сообщение об ошибке. Я нажимаю О.К. и это работает. Просто нужно сообщение об ошибке, чтобы уйти.

РЕШЕНИЕ: Используйте приведенный выше код (или код, указанный в ответе ниже), затем установите для «типа изображения» значение «внедренный», а затем удалите поле «изображения», чтобы оно показало (никто)". Сохраните и запустите. Это должно работать.

СПАСИБО!

Ответы [ 2 ]

1 голос
/ 15 октября 2011

Текущая папка зависит от того, как вы открываете базу данных в Access. По крайней мере, если вы откроете его через «File-Open», текущая папка изменится на папку файла MDB. Но если вы открываете с помощью двойного щелчка MDB в проводнике, это не так.

1 голос
/ 06 июля 2010

Вы можете установить свойство в событии 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, но я застрял на земле, что время забыл, поэтому нужна эта пользовательская функция, она все еще работает с более поздними версиями доступа

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...