このチュートリアルでは、アプレットが同じページの別のアプレットとの間でメッセージの送受信/データの送受信を行う方法を学習します。
デモンストレーションのための2つのアプレットファイルがあります.
{空} 1。 AppletExample1 – ボタンが含まれています。クリックするとAppletExample2の名前が変更されます。 2. AppletExample2 – “TextArea”を含み、その名前を表示します。
通信は
getAppletContext()。getApplet( “Applet Name”)
を介して行われ、アプレットを名前で返します。
__P.Sアプレット名はHTMLページで指定されていますが、アプレットのクラス名ではありません。
1. AppletExample1.java
package com.mkyong.applet; import java.applet.Applet; import java.awt.Button; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class AppletExample1 extends Applet implements ActionListener { Button button; public void init(){ button = new Button("Change AppletExample2's name"); button.setActionCommand("CHANGEME"); button.addActionListener(this); add(button); } @Override public void actionPerformed(ActionEvent e) { if(e.getActionCommand().equals("CHANGEME")){ AppletExample2 appExample2 = (AppletExample2)getAppletContext().getApplet("HtmlApplet2"); appExample2.setName("Your name changed by Applet1"); } } }
2. AppletExample2.java
package com.mkyong.applet; import java.applet.Applet; import java.awt.FlowLayout; import java.awt.TextArea; public class AppletExample2 extends Applet{ String name; TextArea textBox; public void init(){ name = "no name"; setLayout(new FlowLayout()); textBox = new TextArea(5,40); add(textBox); } public void setName(String name){ this.name = name; textBox.append(this.name); } }
3. HTML
Testing 1234 AppletExample1 AppletExample2
“AppletExample2″は、 “HtmlApplet2″アプレットの名前 –
getAppletContext()。getApplet( “HtmlApplet2″);
で取得できます。