So starten Sie ein Applet: Starten Sie ein anderes Applet
In bestimmten Szenarien benötigen Sie möglicherweise ein vorhandenes Applet, um ein anderes Applet zu starten und andere Aufgaben auszuführen.
Hier sind zwei Dateien zur Demonstration
1. AppletExample1.java
2. AppletExample2.java
Das "AppletExample1.java" enthält einen "Thread" und startet "AppletExample2.java" nach 5 Sekunden.
1. AppletExample1.java
package com.example.applet; import java.applet.Applet; import java.applet.AppletStub; import java.awt.Graphics; import java.awt.GridLayout; public class AppletExample1 extends Applet implements Runnable, AppletStub { Thread threadABC; public void init(){} public void paint(Graphics g) { g.drawString("I'm Applet 1 ~", 10, 10); g.drawString("Loading Applet 2 ...", 10, 30); } public void run() { try { //sleep for 5 seconds , for demo threadABC.sleep(5000); Class applet2 = Class.forName("com.example.applet.AppletExample2"); Applet appletToLoad = (Applet)applet2.newInstance(); appletToLoad.setStub(this); setLayout( new GridLayout(1,0)); add(appletToLoad); appletToLoad.init(); appletToLoad.start(); }catch (Exception e) { System.out.println(e); } validate(); } public void start(){ threadABC = new Thread(this); threadABC.start(); } public void stop() { threadABC.stop(); threadABC = null; } public void appletResize( int width, int height ){ resize( width, height ); } }
2. AppletExample2.java
package com.example.applet; import java.applet.Applet; import java.awt.Graphics; public class AppletExample2 extends Applet{ public void init(){ } public void paint(Graphics g) { g.drawString("I'm Applet 2 ~", 10, 10); } }
3. HTML-Lade-Applet
Es gibt keine Unterschiede zum Laden von "AppletExample1", laden Sie es einfach wie gewohnt:
Testing
4. Done
Sie werden feststellen, dass Applet angezeigt wird (AppletExample1)
"I'm Applet 1 ~" "Loading Applet 2 ..."
Nach 5 Sekunden ändert es sich zu (AppletExample2)
I'm Applet 2 ~"
Wie wäre es mit dem Applet-Parameter?
Beide Applets verwenden dieselben Parameter, die im Applet-Tag angegeben sind.
Zum Beispiel,
Sowohl „AppletExample1.java“ als auch „AppletExample2.java“ können mit der Methode getParameter („paramUrl“) auf den Wert „paramUrl“ zugreifen.