TITLE:OverlayLayoutの使用
#navi(../)
*OverlayLayoutの使用 [#y05c0630]
Posted by [[terai]] at 2008-01-14

#contents

**概要 [#x828280d]
OverlayLayoutを使用し、JButtonを重ねて配置します。

-&jnlp;
-&jar;
-&zip;

#screenshot

**サンプルコード [#ece74623]
#code{{
final JPanel p = new JPanel();
p.setLayout(new OverlayLayout(p));
p.setBorder(BorderFactory.createEmptyBorder(0,5,0,0));
TriangleButton2 b1 = new TriangleButton2();
TriangleButton1 b2 = new TriangleButton1();
Dimension dim = new Dimension(64, 32);
b1.setMaximumSize(dim);
b1.setPreferredSize(dim);
//b1.setMinimumSize(dim);
//b1.setBorder(BorderFactory.createEmptyBorder(20,20,20,20));
b2.setMaximumSize(dim);
b2.setPreferredSize(dim);
//b2.setMinimumSize(dim);
//b2.setBorder(BorderFactory.createEmptyBorder(20,20,20,20));
p.add(b1);
p.add(b2);
return p;
}}

**解説 [#z79707d9]
上記のサンプルでは、同じ大きさで選択領域の異なる三角形のJButtonを、OverlayLayoutを使うことで重ねて配置しています。

**参考リンク [#y9ab3aa1]
-[[JButtonの形を変更>Swing/RoundButton]]

**コメント [#qfacad78]
- ボタンサイズの指定方法を変更しました。 -- [[terai]] &new{2008-01-17 (木) 20:39:53};

#comment