建好一个ActivexForm以后,在窗体上放上一个文本框Edit1
然后打开 View-->Type Library,点击IActiveFormX前面的+号展开,看到很多属性、方法。右击,在弹出菜单中选择New-->Property,这时增加了一个属性,名称为Property1,(看到有两个,其实是一个,分别是读和写,改一个就行),改名为EditValue,并选择Type为BSTR,设置完成后关闭类型库编辑。
这时在ActiveFormImpl1单元可以看到这样两个函数
function Get_EditValue: WideString
safecall;//取值
procedure Set_EditValue(const Value: WideString)
safecall;//写值
加两条语句:
function TActiveFormX.Get_EditValue: WideString;
begin
Result:=edit1.Text;
end;
procedure TActiveFormX.Set_EditValue(const Value: WideString);
begin
edit1.Text:=value;
end;
编译,发布,注册ocx,修改网页源码:(主要是给ocx一个id名称,然后加两个按钮读写ocx中的值)
<HTML>
<H1> Delphi 6 ActiveX Test Page </H1><p>
You should see your Delphi 6 forms or controls embedded in the form below.
<HR><center><P>
<OBJECT
classid="clsid:CC71CF17-8AC0-4E00-A922-066E8A0BA3EA"
codebase="C:/Documents and Settings/Administrator.ZSZ/桌面/新建文件夹 (2)/新建文件夹
/ActiveFormProj1.ocx#version=1,0,0,0"
width=690
height=452
align=center
id="ocx"
hspace=0
vspace=0
>
</OBJECT>
<input type=button value="Read"
OnClick="showvalue()">
<input type=button value="Set "
OnClick="setvalue()">
<script language="vbscript">
sub showvalue
alert ocx.editvalue
end sub
sub setvalue
ocx.editvalue="kasjdkf"
end sub
</script>
</HTML>