程序代码: Appletjava 源码
import javaawt*; import javaawtevent*; import javaapplet*; public class Applet extends Applet { TextField tf = new TextField(Applet你能收到吗?); // 定义文本框 Button b = new Button(发送到Applet); // 发送按钮 public void init() { setLayout(new FlowLayout()); // 设置布局管理器为FlowLayout add(tf); add(b); } public boolean action(Event ev Object obj) // 处理按钮事件 { if(evtarget instanceof Button) // 如果事件是从按钮来的 { String msg = tfgetText(); Applet applet = (Applet)getAppletContext()getApplet(Applet); if(applet != null) // 取Applet的句柄 { appletAppendText(msg); // 调用applet中的函数 return true; } else { tfsetText(没有找到Applet); return false; } } return false; } } ================================================= Appletjava 源码
import javaappletApplet; import javaawt*; public class Applet extends Applet { TextField text = new TextField(); public void init() { setLayout(new FlowLayout()); add(text); } public void AppendText(String msg) // <<--- 声明为公开方法以便applet1调用 { text.setText("我收到了!是\""+msg+"\""); } } 说明:Applet类中可以取得网页的上下文句柄,因此,同网页内的两个Applet是可以互相访问到的,在本例中注意Applet2的HTLM代码一定要加上name="Applet2",否则无法取得Applet2得句柄.编译的时候先编译Applet2,这样Applet1中才能引用Applet2这个类.JB下例子通不过,需要在IE中执行. |