LineBorder
広告
ここではLineBorderの使い方について見ていきます。LineBorderは指定した色と線の太さで枠を作るBorderクラスです。
まずLineBorderのクラス図を見て下さい。
- java.lang.Object
- javax.swing.border.AbstractBorder
- javax.swing.border.LineBorder
- public class LineBorder extends AbstractBorder
見た目は下記のようになります。
コンストラクタ
LineBorderではコンストラクタは3つ用意されています。
| コンストラクタ |
|---|
| LineBorder(Color color) 直線ボーダを、指定されたカラーおよび太さ (thickness = 1) で作成します。 |
| LineBorder(Color color, int thickness) 指定された色と太さで直線ボーダを作成します。 |
| LineBorder(Color color, int thickness, boolean roundedCorners) 指定された色と太さと隅の形状で直線ボーダを作成します。 |
コンストラクタは3つありますが、線の色、太さの指定と、隅の形状を指定します。3番目のコンストラクタを見てみましょう。
LineBorder public LineBorder(Color color, int thickness, boolean roundedCorners)
指定された色と太さと隅の形状で直線ボーダを作成します。 パラメータ: color - ボーダのカラー thickness - ボーダの太さ roundedCorners - ボーダの隅を丸くするかどうか
線の色はColorクラスの値で、太さはピクセル単位で指定します。隅を丸くくするかはtrueならば丸くすることになります。
実際の記述方法は下記のようになります。
JButton btn = new JButton("Test");
LineBorder border = new LineBorder(Color.red, 2, true);
btn.setBorder(border);
サンプル
では実際に試してみましょう。
import javax.swing.*;
import java.awt.event.*;
import java.awt.Color;
import javax.swing.border.*;
import java.awt.Dimension;
public class SwingTest extends JFrame{
public static void main(String[] args){
SwingTest test = new SwingTest("SwingTest");
test.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
test.setVisible(true);
}
SwingTest(String title){
setTitle(title);
setBounds( 10, 10, 300, 200);
JPanel p = new JPanel();
JButton btn1 = new JButton("Tennis");
btn1.setPreferredSize(new Dimension(100,100));
btn1.setBorder(new LineBorder(Color.red, 2));
JButton btn2 = new JButton("Golf");
btn2.setPreferredSize(new Dimension(100,100));
btn2.setBorder(new LineBorder(Color.blue, 8, true));
p.add(btn1);
p.add(btn2);
getContentPane().add(p);
}
}
実行結果は下記のようになります。
右のボタンは角を丸くしています。
( Written by Tatsuo Ikura )
JavaDrive