MS Access 2003或2010中图像的相对路径?

时间:2011-04-14 14:13:00

标签: ms-access

是否可以在MS Access 2003或2010中使用图像的相对路径?

据我所知,事实并非如此。

您可以在运行时使用生成路径,并使其看起来像是一个相对路径

image1.Picture = <ProgramPath> & "\" & <RelativePath>

但这样做,我没有能力在设计时看一下图片。我确实需要这个选项!

这是用例。如果你知道一个解决方案,那就太好了:

folderDevelopment&lt;只能访问开发人员和玩新东西 folderDevelopment \ myProgram \ myProgramDevelopment.mdb / accdb&lt; testprogram folderDevelopment \ myProgram \ Images&lt; imagefolder

folderProduction&lt;普通用户可以访问 folderProduction \ myProgram \ Images&lt;普通用户的图像文件夹
folderProduction \ myProgram \ myProgramProduction.mdb / accdb&lt;普通用户的程序

有时我需要复制myProgramDevelopment.mdb,将其重命名为myProgramProduction.mdb 并将其移动到另一个文件夹。

如果我使用绝对路径,我的链接不会中断,但普通用户无权读取folderDevelopment。所以图片破了。

如果我使用伪相对路径,运行期间的链接总是完美的,但我在设计时没有图像,所以它不适合开发。

我现在看到的唯一解决方案是使用绝对路径并在每次切换时(手动或使用宏)更改它们,这是一个选项,但不是很好。

为什么访问2003年甚至2010年都不支持相对路径?太蹩脚了:/

1 个答案:

答案 0 :(得分:1)

Application.CurrentProject.Path将返回.mdb / .accdb的路径。然后,您可以将其用作创建“相对”路径的基础。

您无法在Access 2003中直接使用图像的相对路径(我不能代表Access 2010)。通常接受的解决方法是在Form_Load事件中设置图像控件Picture属性:

Me.MyImg.Picture = Application.CurrentProject.Path & "\images\MyPic.jpg"