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 Visual Basic that shows how you can determine what 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 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
© 1997 Microsoft Corporation. All rights reserved. Terms of Use.