我今天用Jpanel里面用的FlowLayout布局管理器来布局的,第一次是正常的,当界面关闭的时候我删除Jpanel里面的所有component,但是jpanel是没删除的,再打开布局管理器就失效了,请大家指点下那边的问题。

解决方案 »

  1.   

    这个问题起初我以为是资源管理器的缓存没清空的问题,我就调用了一下invalidateLayout()方法,不过也没有作用。
      

  2.   

    这个问题起初我以为是布局管理器的缓存没清空的问题,我就调用了一下invalidateLayout()方法,不过也没有作用。
      

  3.   

    起初我以为是布局管理器没有重置的问题,我就调用了下invalidateLayout()方法来重置下,结果没作用。
      

  4.   


    //代码是ActionScript3.0 不过跟java非常类似
    _starGrid1 = new JPanel(new FlowLayout(2,1,0));//创建
    //--------------添加组件---------------
    _starGrid1.append(new StarItem(equip));//添加的代码,这个是一个循环添加不只一个被添加
    //--------------删除组件---------------
    if(_starGrid1 != null)//移除组件
    {
    len = _starGrid1.getComponentCount();
    for (i = 0; i < len; i++)
    {
    starItem = _starGrid1.removeAt(0) as StarItem;
    starItem.release();
    starItem = null;
    }
    }
    以上是相关的部分代码