如何使用 ActiveX 参数将项目添加到列表框中?
How to add items into Listbox using ActiveX params?
我是 ActiveX 新手。我正在尝试使用 HTML 参数将一些项目添加到列表框中:
<object classid="clsid:B8F86405-G7YB-4BDF-AD70-55B265068G44" codebase="project.ocx" width="600" height="500">
<param name="item" value="item1">
<param name="item1 id " value="1">
</object>
我还不知道如何在 Delphi 中读取那些 HTML 值。我想我必须使用一些 getter/setter,但我不知道从哪里开始。
HTML <object>
元素根据需要使用 IPersistPropertyBag
and IPropertyBag
interfaces. The HTML host (such as a web browser) creates the specified object, and if successful then queries it for IPersistPropertyBag
, and if successful then calls Load()
passing it an IPropertyBag
object that the object can Read()
值将参数值加载到 ActiveX 对象中。
在Delphi中,你不需要求助于那个级别。您可以直接设置属性:
uses
..., ComObj;
var
Obj: Variant;
begin
// if you have a ProgID name, use CreateOleObject() instead...
//Obj := CreateOleObject('progid');
Obj := CreateComObject(StringToGUID('{B8F86405-G7YB-4BDF-AD70-55B265068G44}'));
Obj.item := 'item1';
Obj.item1 := '1';
end;
当然,如果属性不是字符串,则使用适当的类型。例如,如果 item1
是一个整数:
Obj.item1 := 1;
我是 ActiveX 新手。我正在尝试使用 HTML 参数将一些项目添加到列表框中:
<object classid="clsid:B8F86405-G7YB-4BDF-AD70-55B265068G44" codebase="project.ocx" width="600" height="500">
<param name="item" value="item1">
<param name="item1 id " value="1">
</object>
我还不知道如何在 Delphi 中读取那些 HTML 值。我想我必须使用一些 getter/setter,但我不知道从哪里开始。
HTML <object>
元素根据需要使用 IPersistPropertyBag
and IPropertyBag
interfaces. The HTML host (such as a web browser) creates the specified object, and if successful then queries it for IPersistPropertyBag
, and if successful then calls Load()
passing it an IPropertyBag
object that the object can Read()
值将参数值加载到 ActiveX 对象中。
在Delphi中,你不需要求助于那个级别。您可以直接设置属性:
uses
..., ComObj;
var
Obj: Variant;
begin
// if you have a ProgID name, use CreateOleObject() instead...
//Obj := CreateOleObject('progid');
Obj := CreateComObject(StringToGUID('{B8F86405-G7YB-4BDF-AD70-55B265068G44}'));
Obj.item := 'item1';
Obj.item1 := '1';
end;
当然,如果属性不是字符串,则使用适当的类型。例如,如果 item1
是一个整数:
Obj.item1 := 1;