TITLE:JPanelの展開と折りたたみ

JPanelの展開と折りたたみ

編集者:Terai Atsuhiro
作成日:2004-11-01
更新日:2021-07-03 (土) 03:42:14

概要

JPanelの展開と折りたたみを行います。

#screenshot

サンプルコード

 public void initComps(Vector panelList, ExpansionEvent e) {
   setVisible(false);
   centerBox.removeAll();
   northBox.removeAll();
   southBox.removeAll();
   ExpansionPanel es = (ExpansionPanel) e.getSource();
   boolean southFlag = false;
   for(Iterator it=panelList.iterator();it.hasNext();) {
     ExpansionPanel exp = (ExpansionPanel) it.next();
     if(exp==es && exp.isSelected()) {
       centerBox.add(exp);
       southFlag = true;
     }else if(southFlag) {
       exp.setSelected(false);
       southBox.add(exp);
     }else{
       exp.setSelected(false);
       northBox.add(exp);
     }
   }
   setVisible(true);
 }
  • &jnlp;
  • &jar;
  • &zip;

解説

上記のサンプルでは、ボタンが押されるたびにそのパネルの展開と折りたたみを行い、同時にBorderLayoutの北、中央、南に各パネルを振り分けています。このため展開されるパネルはひとつだけになります。

L2FProd.com - Common Components にある JOutlookBar で、もっときれいにパネルの展開や折りたたみをすることができるようです(アニメーション付き)。ソースも公開されているので参考にしてみてください。

参考リンク

コメント