Beans Development Kit (BDK)分析(三)

 

.模块介绍

       BDK的主要模块分为:设计面板,工具栏,属性浏览器,跟踪器和工具类。前三者主要是界面的表示,工具类是一个包含封装,Jar文件加载,类编译,事件监听等等。

启动过程

       BDK的启动过程可以了解各个模块的启动顺序,和初始化过程,了解各项资源的配置,以及模块之间的配合。

       这是BeanBoxFrame的类图,由Jbuilder8自动产生的UML图。

 

       通过源代码分析,可以得到以下流程图:

 

1.         BeanBoxFrame的初始化:

BeanBoxFrame的界面如下:

 

       通过源代码分析,可以得到以下流程图:

 

2.         ToolBox的初始化

ToolBox的界面如下:

 

       通过源代码分析,可以得到工具条的初始化主要是以下代码来实现:

    if (! BeanBoxFrame.getQuickStart()) {

        Vector jarNames = getJarNames();   

        for (int i = 0; i < jarNames.size(); i++) {

            String name = (String)jarNames.elementAt(i);

       try {

                addBeansInJar(name);

            } catch (Throwable th) {

           System.err.println(name + ": jar load failed: " + th);

           th.printStackTrace();

            }

        }

    }

 

// Vector jarNames = getJarNames();

    private static Vector getJarNames() {

    File cwd = new File(System.getProperty("user.dir"));

    File pwd = new File(cwd.getParent());

    File jars = new File(pwd, "jars");

    if (! jars.isDirectory()) {

        System.err.println(jars+" is not a directory!!");

    }

    Vector result = new Vector();

    String names[];

    names = jars.list(new FileExtension(".jar"));

    for (int i=0; i<names.length; i++) {

        result.addElement(jars.getPath() + File.separatorChar + names[i]);

    }

    names = jars.list(new FileExtension(".JAR"));

    for (int i=0; i<names.length; i++) {

        result.addElement(jars.getPath() + File.separatorChar + names[i]);

    }

 

// addBeansInJar(name);

    synchronized void addBeansInJar(String jarFile) throws IOException {

    JarLoader.loadJarDoOnBean(jarFile, helper);

    doLayout();

    }

 

 

3.         BeanBox的初始化

通过源代码分析,可以得到以下流程图:

 

4.         PropertySheet的初始化

PropertySheet的界面如下:

 

       通过源代码分析,可以得到setTarget方法流程图:

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值