コンポーネントに枠を設定する

広告

JComponentクラスのサブクラスには枠を付けることができます。サブクラスには、JButtonやJLabelなどの他にJPanelなども含まれます。
コンポーネントに枠を指定するにはJComponentクラスのsetBorderメソッドを使います。

このコンポーネントのボーダを設定します。Border オブジェクトは、コンポー
ネントのインセットを定義し (コンポーネントで直接設定されているインセッ
トをオーバーライドする)、任意でそれらのインセットの境界内のボーダ装飾を
描画します。Swing コンポーネントで装飾領域および非装飾領域 (マージンお
よびパディングなど) の両方を生成するには、インセットではなくボーダを使
用する必要があります。単一のコンポーネント内で複数のボーダを入れ子にす
るには、複合ボーダを使用できます。 

技術的には JComponent を継承するどのオブジェクトにもボーダを設定できま
すが、標準の Swing コンポーネントの Look & Feel の実装の多くは、ユーザ
設定のボーダでは正しく動作しません。通常、JPanel または JLabel 以外の
標準の Swing コンポーネントでボーダを設定するときは、コンポーネントを 
JPanel に入れて、JPanel でボーダを設定することをお勧めします。 

パラメータ:
  border - このコンポーネントで描画されるボーダ

既に用意されている様々なBorderクラスを使うか、または自分でBorderクラスを作成します。使用するクラスを「setBorder」メソッドを使って、各コンポーネントに設定してあげます。

このメソッドの引数で指定されているBorderクラスについて、次のページから順番に見ていきます。

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)