3

MiG Layout を使用して Java Swing アプリケーションを作成しています。GUI はカスタム JPanel である一連の行で構成され、初期レイアウトを作成します。

パネル×

パネルy

しかし後で、これらの真ん中にパネルを挿入して、他のパネルを押し下げたいと思っています。

パネル×

パネルz

パネルy

現時点では、レイアウト内のすべてのコンポーネントを反復処理して再追加することでそれを行っています。

    Map<Component, Object> constraintMap = ((MigLayout)this.getLayout()).getConstraintMap();
    Component[] allComps = this.getComponents();
    this.removeAll();
    for(Component c : allComps){
        if('met some insert condition'){
            this.add('new component to insert', new CC().wrap());
        this.add(c, new CC().wrap());
    }
    this.revalidate();

多くのコンポーネントはありませんが、これは非常に最適ではないように感じますが、それを行うためのより良い方法はありますか? どんな助けでも大歓迎です。

4

0 に答える 0