未绑定的OLE对象控制器 - 通过VBA更改图片 - Microsoft Office Access

时间:2011-06-11 12:20:37

标签: image ms-access vba access-vba ole

我有一张桌子,在那张桌子上我有这​​样的用户:

id   username    name    password     picture

现在,我有一个表单,我希望能够在未绑定 Ole对象中显示图片。我的情况需要使用未绑定的对象,所以不要告诉我绑定的解决方案。

好的,现在我需要在发生某些事情时改变它的值 - 我可以使用DLookup()从我的表中获取图片,但我不知道如何将值放在带VBA的控制器中...我使用什么属性?

谢谢, Fingerman。

1 个答案:

答案 0 :(得分:2)

我怀疑你想做什么是不可能的。每次尝试更改未绑定的OLE控件的值都会引发错误2774,“该组件不支持自动化”。所以我最好的猜测是它必须是一个绑定控件,如果你想使用自动化。我能想到的另一个可能性是在设计模式下重新打开表单(使用VBA);或许你可以找到一些方法来改变它。

但是,我以前从未尝试过这个。在窗体上显示图像时,我使用图像控件而不是OLE控件。据微软称,Image控件的运行速度更快。

此外,我不会将实际图像存储在表格中。相反,我将路径存储到文件系统中的图像。可以轻松地将外部图像从VBA分配给图像控件。在Access 2007之前,将数据存储在数据库中的效率非常低。据说,从2007年开始,有一种新的方法可用效率较低,但我仍然不使用它。