applets |
|
applets: Allgemeines zur Verwendung |
|
Mit dem Objekt applets, das in der JavaScript-Objekthierarchie unterhalb des document-Objekts liegt, haben Sie Zugriff auf Java-Applets, die in einer HTML-Datei definiert sind. Die einzige gewöhnliche JavaScript-Objekteigenschaft des applet-Objekts ist die Anzahl der Java-Applets in einer Datei.
Über das applets-Objekt haben Sie jedoch auch Zugriff auf Code in Java-Applets. Dazu müssen Sie das gewünschte Java-Applet ansprechen. Es stehen drei Arten zur Verfügung, mit JavaScript ein bestimmtes Java-Applet anzusprechen:
document.applets[#].Code(); |
document.applets["AppletName"].Code(); |
document.AppletName.Code(); |
Java-Applets können Sie auf drei Arten ansprechen:
Speichert, wie viele Java-Applets eine HTML-Datei enthält.
<html><head><title>Test</title> </head><body> <applet code="hallo.class" name="Hallo" width=150 height=25> </applet> <script language="JavaScript"> document.write("Gefunden wurden " + document.applets.length + " Java-Applets") </script> </body></html> |
Mit document.applets.length können Sie die Anzahl der Java-Applets in einer HTML-Datei ermitteln. Das Beispiel enthält zunächst HTML-Text mit einem Java-Applet und schreibt am Ende mit document.write() dazu, wie viele Applets in der Datei gefunden wurden.
Sie können direkt auf den Code eines laufenden Java-Applets zugreifen. Dazu müssen Sie jedoch den Quellcode des Java-Applets kennen (Dateien *.java vor dem Compilieren mit dem Java-Compiler).
Das folgende Beispiel zeigt das Prinzip. Nähere Informationen zur Vorgehensweise und zum Konzept des "lebendigen Drahts" ("LiveWire") zwischen JavaScript und Java finden Sie im JavaScript Guide auf den Entwicklerseiten von Netscape.
import java.awt.Graphics; public class HelloWorld extends Applet { String myString; public void init() { myString = new String("Das ist mein Hallo-Text"); } public void paint(Graphics g) { g.drawString(myString, 25, 20); } public void setString(String aString) { myString = aString; repaint(); } } |
<html><head><title>Test</title> </head><body> <applet code="hallo.class" name="Hallo" width=150 height=25> </applet><br> <script language="JavaScript"> <form name="Eingabe"> <input name="Text"> <input type=button value="Test" onclick="document.Hallo.setString(document.Eingabe.Text.value)"> </form> </script> </body></html> |
Im ersten Teil des Beispiels finden Sie den Quellcode eines Java-Applets, das einen Text am Bildschirm ausgibt. Auf den Quellcode wird hier nicht näher eingegangen. Achten Sie lediglich auf die letzte Methode, die in dem Quelltext definiert wird:
public void setString(String aString)
Damit wird der definierte Text letztendlich am Bildschirm ausgegeben.
Im zweiten Teil des Beispiels wird angenommen, daß der Quellcode aus dem ersten Teil des Beispiels mit dem Java-Compiler zu einem Java-Applet mit dem Namen hallo.class compiliert wurde. Dieses Java-Applet wird in der HTML-Datei mit dem <applet>-Tag eingebunden. Dabei erhält das Applet mit name= den Namen "Hallo".
Unterhalb davon wird ein Formular mit einem Eingabefeld und einem Button definiert. In dem Eingabefeld läßt sich ein Text eingeben. Beim Klick auf den Button wird der eingegebene Text an das Java-Applet "gesendet", und zwar so, daß der Text, den das Applet anzeigt, durch den eingegebenen Text ersetzt wird.
Dazu wird das Applet mit document.Hallo angesprochen. Dahinter wird keine JavaScript-Methode notiert, sondern direkt eine Methode aus dem Quellcode des Java-Applets, nämlich sie Methode setString(). Diese Methode erwartet als Parameter eine Zeichenkette (siehe Quellcode des Java-Applets). Das JavaScript übergibt als Zeichenkette den Wert aus dem Eingabefeld des Formulars.
Der Umgang mit Formularen in JavaScript wird beim forms-Objekt und seinen Unterobjekten näher beschrieben.
weiter: | forms |
zurück: | anchors |