要在运行时创建链接或嵌入对象,需要在代码中使用方法和属性。OLE 容器控件有各种用来操作链接或嵌入对象的属性和方法。关于应用于 OLE 容器控件的全部属性和方法的清单,请参阅“OLE 容器控件”。
通过使用 OLE 容器控件的 Object 属性,可以使用链接或嵌入对象的属性和方法。Object 属性是运行时、只读属性,它保持对 OLE 容器控件中的对象的引用。使用该属性执行 OLE 容器控件的自动化任务,以及程序化操作对象支持的属性和方法:
strObjName = oleObj1.Object.Name
为使用此属性,OLE 容器控件必须包含可编程的对象。关于可编程对象的详细信息,请参阅“ActiveX 部件的类型”。
可以用OLE容器控件的 CreateLink 方法,在运行时从文件中创建一个链接对象。这种方法需要一个文件参数 sourcedoc,从这个文件创建对象;还需要一个可选参数 sourceitem,它规定了想要从源文件中链接的数据。运行时,下面代码创建链接对象:
oleObj1.CreateLink "C:\Excel\Test.xls"
注意 如果用“CreateLink”创建一个链接的对象,不必在“属性”窗口设置“类”、“SourceDoc”和“SourceItem”属性。
详细信息 请参阅“CreateLink 方法”。
欲在运行时,从文件中创建一个嵌入的对象,可以使用 CreateEmbed 方法。这种方法有两个参数,sourcedoc 和 class(如果指定 SourceDoc,class 是可选的)。Sourcedoc 决定对象的模板,而 class 决定对象的类型。当用 CreateEmbed 时,不需要设置 SourceDoc 和 Class 属性.
下列代码,用现存文件作为对象的模板创建嵌入的对象。
oleObj1.CreateEmbed "Q1profit.xls"
详细信息 请参阅“CreateEmbed 方法”。
当创建一个空的嵌入的对象时,最好激活将要为对象提供数据的 ActiveX 部件。此时,可以使用 DoVerb 方法。它允许用户在运行时将任何数据输入应用程序中。然后,用户选择 ActiveX 部件的 Update 命令(这种菜单命令将出现在部件的“文件”菜单上),显示这些最新进入 OLE 容器控件中的数据。
要在运行时创建一个空的嵌入对象,请按照以下步骤执行:
oleObj1.CreateEmbed "","Excel.Sheet"
例如,下列代码创建一个空的嵌入对象,然后激活使用缺省 DoVerb 操作创建该对象的应用程序。
oleObj1.CreateEmbed "", "Excel.Sheet"
oleObj1.DoVerb -5 '
激活
当创建一个包含有不同应用程序的多种信息的文档应用程序时,提供空的嵌入对象是有效的方法。关于更详细的信息,请参阅“运行时让用户规定对象”。
可以将 OLE 容器控件与存储在 Microsoft Jet 数据库引擎或 Microsoft Access 数据库中的数据绑定。如果有一个雇员照片表的数据库,就可能要这么做。如果这些照片作为对象被存储,可以将它们与 OLE 容器控件绑定,并将它们作为用数据控件访问的每个记录显示在窗体上。为了将数据与这些数据库中的数据绑定,需要在 DataSource 属性中规定数据源(数据集名),并在 OLE 容器控件的 Datafield 属性中规定来自数据源的字段的名称。当从数据库显示一个对象时,OLE 容器控件允许用户激活、编辑和更新对象。如同任何被绑定的控件一样,当记录位置被改变时,被更新的对象将自动写回数据库。
详细信息 请参阅《数据访问指南》。