------------------------------------------------------------
Comment executer une fonction javascript depuis une applet en JDK 1.2 (cette applet appelle la fonction javascript "myfunc" qui prend un parametre) :
import java.applet.Applet;
import java.awt.Event;
import java.awt.Graphics;
import java.io.PrintStream;
import netscape.javascript.JSObject;
public class JavaScriptCaller extends Applet
{
public JavaScriptCaller()
{
}
public void init()
{
}
public boolean mouseDown(Event event, int i, int j)
{
try
{
String as[] = new String[1];
as[0] = "x = " + (new Integer(i)).toString() + ", y = " + (new Integer(j)).toString();
JSObject jsobject = JSObject.getWindow(this);
jsobject.call("myfunc", as);
}
catch(Exception exception)
{
showStatus("Error call javascript err=" + exception);
}
return true;
}
public void paint(Graphics g)
{
g.drawString("Click here...", 5, 10);
}
}
------------------------------------------------------------
L'applet devra avoir ete declaree comme ca dans le code HTML (c'est le MAYSCRIPT qui est important) :
<OBJECT classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" WIDTH=250 HEIGHT=50 codebase="http://java.sun.com/products/plugin/1.2/jinstall-12-win32.cab" MAYSCRIPT="yes">
<PARAM NAME = CODE VALUE = "JavaScriptCaller" >
<PARAM NAME = type VALUE = "application/x-java-applet;version=1.2">
<PARAM NAME = MAYSCRIPT VALUE = "true">
</OBJECT>
------------------------------------------------------------
Tu declares dans HTML ton objet ActiveX :
<object id="MyDDE" classid="clsid:8C0CE9CA-CCCE-11D4-803C-0080C72F5C98" width="34" height="30"></object>
(ici son nom c'est "myDDE"
------------------------------------------------------------
En javascript, tu pilotes ton ActiveX tour betement par :
document.myDDE.fonction_de_l_objet
et ca devrait etre bon