• category: swing folder: MatteBorder title: MatteBorderでラベル枠を修飾 tags: [MatteBorder] tags: [MatteBorder, JLabel] author: aterai pubdate: 2004-12-20T00:29:03+09:00 description: MatteBorderでラベルの枠を修飾します。 description: JLabelの装飾にMatteBorderを使用し、4辺でそれぞれ異なる線幅の枠を描画します。 image: https://lh6.googleusercontent.com/_9Z4BYR88imo/TQTPp-xSv1I/AAAAAAAAAeU/K5lHH6YMz_E/s800/MatteBorder.png

概要

MatteBorderでラベルの枠を修飾します。

概要

JLabelの装飾にMatteBorderを使用し、4辺でそれぞれ異なる線幅の枠を描画します。

サンプルコード

サンプルコード

#spandel
Border outside = BorderFactory.createMatteBorder(0,10,1,0,Color.GREEN);
#spanend
#spandel
Border inside  = BorderFactory.createEmptyBorder(0,5,0,0);
#spanend
#spanadd
Border outside = BorderFactory.createMatteBorder(0, 10, 1, 0, Color.GREEN);
#spanend
#spanadd
Border inside = BorderFactory.createEmptyBorder(0, 5, 0, 0);
#spanend
label.setBorder(BorderFactory.createCompoundBorder(outside, inside));
View in GitHub: Java, Kotlin

解説

MatteBorderは、4辺それぞれに色などを表示することができます。上記のサンプルでは、左と下のみ枠を描いてタイトル風のラベルを作成しています。アイコンをタイル状に描画することもできるので、JComboBoxにアイコンを表示のような使い方をする場合もあります。

解説

  • 4辺それぞれ異なる幅の直線を描画可能なMatteBorderを使用して左(10px)と下(1px)のみフチを描画
    • 内部余白をEmptyBorderで作成し、上記のMatteBorderと組み合わせてCompoundBorderを作成
  • JComboBoxにアイコンを表示のようにBorderとしてIconをタイル状に描画する方法もある

参考リンク

参考リンク

コメント

コメント