無為

          無為則可為,無為則至深!

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            190 Posts :: 291 Stories :: 258 Comments :: 0 Trackbacks
          可以寫一個"容器"類使得兩個applet可以相互通信
          一個拙劣的參考實現(xiàn)

          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(草兒)原創(chuàng),凡是索引、收藏
          、轉(zhuǎn)載請注明來處和原文作者。非常感謝。

          posted on 2005-12-14 13:05 草兒 閱讀(702) 評論(3)  編輯  收藏 所屬分類: Java編程經(jīng)驗談

          Feedback

          # re: 兩個獨立運行的java applet如何調(diào)用 2013-06-04 10:11 xxoo
          看不懂,  回復  更多評論
            

          # re: 兩個獨立運行的java applet如何調(diào)用 2013-06-04 10:20 xxoo
          一個用的是 5.1.0_01 -Djava.class.path=C:\PROGRA~1\Evermore\EIOffice\EIOffice.jar -Dsun.java2d.ddlock=true -Dsun.awt.noerasebackground=true -Dsun.java2d.noddraw=true
          一個用的是 5.1.10  回復  更多評論
            

          # re: 兩個獨立運行的java applet如何調(diào)用 2013-06-04 10:21 xxoo
          一個用的是 5.1.0_01 -Djava.class.path=C:\PROGRA~1\Evermore\EIOffice\EIOffice.jar -Dsun.java2d.ddlock=true -Dsun.awt.noerasebackground=true -Dsun.java2d.noddraw=true
          一個用的是 5.1.0_10   回復  更多評論
            

          主站蜘蛛池模板: 交城县| 丘北县| 从化市| 秦安县| 汉寿县| 鄂温| 日喀则市| 鸡东县| 禹城市| 德格县| 社会| 阳高县| 梅河口市| 盈江县| 吉木萨尔县| 江永县| 佛冈县| 泸水县| 方城县| 安泽县| 新乐市| 永寿县| 孟津县| 赣榆县| 长白| 修武县| 昔阳县| 伊宁县| 吉安县| 灵武市| 金门县| 思茅市| 元氏县| 长岭县| 台前县| 南漳县| 杂多县| 河东区| 沭阳县| 江都市| 呼伦贝尔市|