java 调用 applet_两个独立运行的java applet如何调用

可以写一个"容器"类使得两个applet可以相互通信

一个拙劣的参考实现

import java.applet.Applet;

import java.awt.Button;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

import java.awt.Frame;

public class E{

public A1 a1;

public A2 a2;

public Frame f;

public static void main(String[] args){

E main = new E();

main.f = new Frame("main frame");

main.f.setSize(400, 300);

main.f.addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){

System.exit(0);

}

});

A1 a1 = new A1(main);

a1.init();

a1.start();

main.f.show();

}

}

class A1 extends Applet{

private E controller;

public A1(E controller){

super();

this.controller = controller;

controller.a1 = this;

controller.f.add(this);

controller.f.setTitle("Using by A1");

}

public void init(){

super.init();

Button b = new Button("Start A2");

b.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

controller.a1.stop();

controller.a1.destroy();

controller.a2 = new A2(controller);

controller.a2.init();

controller.a2.start();

controller.f.show();

}

});

this.add(b);

}

public void destroy(){

controller.f.remove(this);

super.destroy();

}

}

class A2 extends Applet{

private E controller;

public A2(E controller){

super();

this.controller = controller;

controller.a2 = this;

controller.f.add(this);

controller.f.setTitle("Using by A2");

}

public void init(){

super.init();

Button b = new Button("Start A1");

b.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

controller.a2.stop();

controller.a2.destroy();

controller.a1 = new A1(controller);

controller.a1.init();

controller.a1.start();

controller.f.show();

}

});

this.add(b);

}

public void destroy(){

controller.f.remove(this);

super.destroy();

}

}

凡是有该标志的文章,都是该blog博主Caoer(草儿)原创,凡是索引、收藏

、转载请注明来处和原文作者。非常感谢。

posted on 2005-12-14 13:05 草儿 阅读(646) 评论(3)  编辑  收藏 所属分类: Java编程经验谈

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值