appendix> Component> JLabel TOPUPPREVNEXT

javax.swing.JLabel

【主な機能】

文字列や、イメージを表示します。 文字列(1つ)とイメージ(1つ)の両方を表示することもできます。 文字列として、HTML (Hyper Text Markup Language) で記述されたテキストを指定することができます。

【主なコンストラクタ】

コンストラクタ機能
JLabel ( ) 空のラベルの生成します。
JLabel ( String text ) 文字列 text を表示したラベルを生成します。 文字列は(ラベルが広がった場合)左詰めになります。
JLabel ( Icon image ) イメージ image を表示したラベルを生成。 イメージは(ラベルが広がった場合)左右の中央に配置されます。
JLabel ( String text, Icon image, int ha ) 文字列 text と、イメージ image の両方を表示したラベルを生成します。 横方向の配置を ha で指定します。 ha は次のいずれか:
  • SwingConstants.LEFT      ... 左詰め
  • SwingConstants.CENTER    ... 中央揃え
  • SwingConstants.RIGHT     ... 右詰め
  • SwingConstants.LEADING   ... (注1)
  • SwingConstants.TRAILING  ... (注2)
JLabel ( String text, int ha ) 横方向の配置を指定して、文字列 text を表示したラベルを生成します。 ha は 上欄と同じ。
JLabel ( Icon image, int ha ) 横方向の配置を指定して、イメージ image を表示したラベルを生成します。 ha は 上欄と同じ。

(注1)左から右に書く言語では左詰め、右から左へ書く言語では右詰め。
(注2)左から右に書く言語では右詰め、右から左へ書く言語では左詰め。

【よく使われるメソッド】

メソッド機能
void setText ( String text ) ラベルに文字列 text を設定します。
void setIcon ( Icon image ) ラベルに Icon image を設定します。ラベルが enabel の時に表示されます。
void setDisabledIcon ( Icon image ) ラベルが disable になったときに表示する Icon image を設定します。
void setHorizontalAlignment ( int ha ) 横方向の配置を ha で指定します。 ha は次のいずれか:
  • SwingConstants.LEFT      ... 左詰め
  • SwingConstants.CENTER    ... 中央揃え
  • SwingConstants.RIGHT     ... 右詰め
  • SwingConstants.LEADING   ... (注1)
  • SwingConstants.TRAILING  ... (注2)
void setVerticalAlignment ( int va ) 縦方向の配置を指定します。 va は次のいすれか:
  • SwingConstants.TOP      ... 上に配置
  • SwingConstants.CENTER   ... 中央に配置
  • SwingConstants.BOTTOM   ... 下に配置
デフォルトは CENTER。
void setHorizontalTextPosition ( int htp ) イメージとテキストの両方がある場合に、 テキストの横方向の相対位置を htp で指定します。 htp は次のいずれか:
  • SwingConstants.LEFT      ... 左に配置
  • SwingConstants.CENTER    ... 中央に配置
  • SwingConstants.RIGHT     ... 右に配置
  • SwingConstants.LEADING   ... (注1)
  • SwingConstants.TRAILING  ... (注2)
void setVerticalTextPosition ( int vtp ) イメージとテキストの両方がある場合に、 テキストの縦方向の相対位置を vtp で指定します。 vtp は次のいずれか:
  • SwingConstants.TOP      ... 上に配置
  • SwingConstants.CENTER   ... 中央に配置
  • SwingConstants.BOTTOM   ... 下に配置
デフォルトは CENTER。
void setIconTextGap ( int gap ) イメージとテキストの間隔をピクセル数で指定します。デフォルトは 4です。

(注1)(注2)は、【主なコンストラクタ】を参照のこと。

【 JComponent から継承している主なメソッド】

メソッド機能
public void setBackground ( Color bc ) ラベルの背景色を設定します。 ラベルは初期状態では不透明でないので、 貼り付けた土台のコンポーネントの色が透けてみえます。 背景色を有効にするには、このラベルに対して setOpaque(true) を 実行する必要があります。例6参照。
public void setBorder ( Border b ) 枠をつけます。 BorderFactory参照
public void setForeground ( Color fc ) ラベルに描く文字の色を指定します。
public void setFont ( Font f ) ラベルに描く文字のフォントを指定します。
public void setOpaque ( boolean opq ) ラベルに設定した背景色を有効にしたければ、 opq true 、 透明にするときは、 false を指定します。 他のコンポーネントと異なり、ラベルは初期値が透明になっています。

使用例

以下の使用例のプログラムのコンパイル・実行には

が必要です。 使用例のプログラムをコンパイルする前に、 同じフォールダにダウンロードしておいてください。 コンパイルは自動的にされます。

【例1】

setEnable の働きをしらべてみましょう。

プログラム LabelDemo3.java

実行結果

LabelDemo3-1.gif    LabelDemo3-2.gif

【例2】

setHorizontalAlignment> を使ってみましょう。

プログラム LabelDemo4.java

実行結果

LabelDemo4-2.gif

LabelDemo4-3.gif

【例3】

setHorizontalTextPosition を使用してみましょう。

プログラム LabelDemo5.java

実行結果

LabelDemo5-2.gif

LabelDemo5-3.gif

【例4】

setVerticalTextPosition を使用してみましょう。

プログラム LabelDemo6.java

実行結果

LabelDemo6-2.gif

LabelDemo6-3.gif

【例5】

HTML で書かれた文字列を指定してみましょう。 ひとつのラベルの中に複数行表示したり、色や大きさを変えたりすることができます。

プログラム LabelDemo7.java

実行結果

LabelDemo7-1.gif

【例6】

ラベルの背景色を指定する場合は、setBackgroundsetOpaque が必要です。

プログラム LabelDemo8.java

実行結果

LabelDemo8-1.gif

【例7】

setText の例
MouseListener については MouseListener を参照してください。

プログラム LabelDemo9.java

実行結果

LabelDemo9-1.gif   最初

LabelDemo9-2.gif   マウスカーソルをのせる
LabelDemo9-3.gif   マウスカーソルを外す

更新日:2009-04-29