You can use custom events to:
As with standard events, you must send the event from the scriptlet and capture the event in the host application.
To send a custom event in the scriptlet:
Note Before passing events to the container object, you can check the scriptlet's frozen property to be sure that the container object is ready to handle events.
For example, the following shows how you can send a custom event called oncolorchange whenever the scriptlet's backgroundColor property is reset.
<SCRIPT LANGUAGE="JavaScript"> function public_put_backgroundColor(value) { window.document.bgColor = value; window.external.raiseEvent("event_onbgcolorchange",window.document); } </SCRIPT>
To handle a custom event in the host application:
The following is an example in Microsoft® Visual Basic® that shows how you can determine which control triggered an event.
Sub ScriptletContainer1_onscriptletevent( ByVal txtTitle As String, _
ByVal eventData As Variant) objName = eventData.srcElement.ID MsgBox "The event " & txtTitle & " occurred in " & objName End Sub
If your host application is Microsoft Internet Explorer, use a script such as the following to capture the scriptlet event.
<SCRIPT LANGUAGE="JavaScript"
FOR=ScriptletControl1
EVENT= onscriptletevent (name, eventData)> alert("The event that occurred in the scriptlet was " + name); </SCRIPT>
You can use a Select Case structure in the onscriptletevent event to take different actions based on different events.
See Also