This is a piece of code which shows the interaction between VBScript and ActiveX Control.
If you have a method in ActiveX Control which takes a Variant array to initiate the control for some
purpose. Use this easy tip.
Step 1 :
In the ActiveX control say we have a function called AssignControlValues which takes the array of Variant
values
Declare the function like the following
Public Function AssignControlValues _ (controlvalues As Variant) dim controlarray as variant dim maxvalues as integer maxvalues = UBound(controlvalues) redim controlarray(maxvalues) for i=0 to maxvalues controlarray(i)=controlvalues(i) next i End function
Step 2 :
At the VBScript side
Declare the object <object classid="CLSID:XXXX" _ CODEBASE="http://vbsource/object.CAB#Version=2,0,0,0 id="Object1>
We can call the method in the ActiveX control from the VBScript using the Object ID just declared above
<script language="vbscript"> dim controlvalues controlvalues(0)=text1.text ' Assign values to the control array controlvalues(1)=combo1.text ' Either u get it from the HTML ' Controls or anything else controlvalues(2)=text3.text controlvalues(3)=list1.name controlvalues(4)=text1.text call Object1.AssignControlValues controlvalues ' pass the array ' as variant ' object </script>
This way the user can pass the entire array with a single method call instead of passing with the ActiveX
property.
This is very usefull for the interaction between VBScript and ActiveX Control.
Note : The method of object could be called with the values of elements in the ActiveX control also.