• category: swing folder: CompoundBorder title: CompoundBorderを使用する tags: [CompoundBorder, Border, TitledBorder] author: aterai pubdate: 2017-05-22T19:09:33+09:00 description: CompoundBorderを使用して複数のBorderを合成し、新たに単一のボーダーを生成します。 image: https://drive.google.com/uc?id=1ICJ1AyKfK7OoNjHF2mcaIlMv3HiJGkBm5g

概要

CompoundBorderを使用して複数のBorderを合成し、新たに単一のボーダーを生成します。

サンプルコード

Border raisedBevel = BorderFactory.createRaisedBevelBorder();
Border topLine = BorderFactory.createMatteBorder(10, 0, 0, 0, Color.GRAY.brighter());
Border loweredBevel = BorderFactory.createLoweredBevelBorder();
Border compound1 = BorderFactory.createCompoundBorder(raisedBevel, topLine);
Border compound2 = BorderFactory.createCompoundBorder(compound1, loweredBevel);
TitledBorder topTitle2 = BorderFactory.createTitledBorder(compound2, "CompoundBorder");
topTitle2.setTitleJustification(TitledBorder.CENTER);

JPanel p2 = new JPanel();
p2.setBorder(topTitle2);
View in GitHub: Java, Kotlin

解説

  • TitledBorder
    • タイトルを追加するBorderとして線幅1LineBorderを使用するTitledBorderを作成してパネルに設定
  • CompoundBorder
    • 外側からRaisedBevelBorderMatteBorderLoweredBevelBorderの順番にCompoundBorderを使用して合成Borderを作成
    • 合成された上記のBorderを使用するTitledBorderを作成してパネルに設定

参考リンク

コメント