EmptyBorder
広告
ここではEmptyBorderの使い方について見ていきます。EmptyBorderは枠が無いBorderクラスです。
まずEmptyBorderのクラス図を見て下さい。
- java.lang.Object
- javax.swing.border.AbstractBorder
- javax.swing.border.EmptyBorder
- public class EmptyBorder extends AbstractBorder implements Serializable
見た目は下記の右のボタンのような感じです。
コンストラクタ
EmptyBorderではコンストラクタは2つ用意されています。
| コンストラクタ |
|---|
| EmptyBorder(Insets borderInsets) 指定された insets の値を持つ、空のボーダを作成します。 |
| EmptyBorder(int top, int left, int bottom, int right) 指定された insets の値を持つ、空のボーダを作成します。 |
コンストラクタは2つありますが、枠のサイズの指定方法が違うだけです。2番目のコンストラクタを見てみましょう。
EmptyBorder public EmptyBorder(int top, int left, int bottom, int right)
指定された insets の値を持つ、空のボーダを作成します。 パラメータ: top - ボーダの上インセット left - ボーダの左インセット bottom - ボーダの下インセット right - ボーダの右インセット
上下左右の枠の大きさを指定して枠を作成します。実際の記述方法は下記のようになります。
JButton btn = new JButton("Test");
Border border = new EmptyBorder( 2, 2, 2, 2);
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));
JButton btn2 = new JButton("Golf");
btn2.setPreferredSize(new Dimension(100,100));
btn2.setBorder(new EmptyBorder( 2, 2, 2, 2));
p.add(btn1);
p.add(btn2);
getContentPane().add(p);
}
}
実行結果は下記のようになります。
左がデフォルトの状態で、右がEmptyBorderを指定した場合です。
( Written by Tatsuo Ikura )
JavaDrive