• title: OverlayLayoutの使用 tags: [OverlayLayout, LayoutManager, JButton] author: aterai pubdate: 2008-01-14T17:09:44+09:00 description: OverlayLayoutを使用し、JButtonを重ねて配置します。

概要

OverlayLayoutを使用し、JButtonを重ねて配置します。

サンプルコード

JButton b1 = new JButton();
JButton b2 = new JButton();
b1.setLayout(new OverlayLayout(b1));
Insets i = b1.getBorder().getBorderInsets(b1);
b1.setBorder(BorderFactory.createEmptyBorder(i.top,i.left,i.bottom,4));
b1.setAction(new AbstractAction("OverlayLayoutButton") {
  @Override public void actionPerformed(ActionEvent e) {
    Toolkit.getDefaultToolkit().beep();
  }
});
b2.setAction(new AbstractAction("▼") {
  @Override public void actionPerformed(ActionEvent e) {
    System.out.println("sub");
  }
});
Dimension dim = new Dimension(64, 24);
b2.setMaximumSize(dim);
b2.setPreferredSize(dim);
b2.setMinimumSize(dim);
b2.setAlignmentX(1.0f);
b2.setAlignmentY(1.0f);
b1.add(b2);
View in GitHub: Java, Kotlin

解説

上記のサンプルでは、JButtonOverlayLayoutを使って、別のJButtonを重ねて右下に配置しています。

参考リンク

コメント