コントロールの背景色は「setBackground」メソッドで設定する。
< setBackgroundメソッド>>
public final void setBackground(Background value)
例)ラベルの背景色を青(BLUE)で塗り潰す
Label lable = new Lable("LABLE BACKGROUND");
lable . setBackground( new Background( new BackgroundFill( Color.BLUE , new CornerRadii( 0 ) , Insets.EMPTY )));
< クラスBackground >>
Backgroundクラスは背景を設定するためのクラスです。
「塗り潰し」又は「イメージ」を選択可能することが可能で4種類のコンストラクタがある。
public Background( BackgroundFill… fills)
public Background( BackgroundImage… images)
public Background( List fills , List images)
public Background( BackgroundFill[] fills , BackgroundImage[] images)
塗り潰しの場合は、引数が「 BackgroundFill 」のコンストラクタを使用する。
重ねりする場合は、配列又は、リストで複数の「 BackgroundFill 」を指定する。
public Background( BackgroundFill… fills)
イメージの場合は、引数が「 BackgroundImage 」のコンストラクタを使用する。
イメージを重ねる場合は、配列又は、リストで複数の「 BackgroundImage 」を指定する。
public Background( BackgroundImage… images)
塗り潰しと、イメージを同時に指定する場合は、下記 何れかコンストラクタを使用する。
同時に指定した場合は、塗り潰し → イメージの順に描画される。
public Background( List fills , List images)
public Background( BackgroundFill[] fills , BackgroundImage[] images)
<< クラスBackgroundFill >>
背景を「塗り潰す」際に、塗り潰しの内容を指定するクラスです。
BackgroundFill(Paint fill, CornerRadii radii, Insets insets)
・Paint fill → 背景色を指定する。グラデーションなども指定することも可能
・CornerRadii radii → 塗り潰しの枠の角確度を指定する。
・Insets insets → 余白を指定する。
<< クラスBackgroundImage >>
背景に表示するイメージを指定するクラスです。
BackgroundImage(Image image, BackgroundRepeat repeatX, BackgroundRepeat repeatY, BackgroundPosition position, BackgroundSize size)
・Image image
→ 配置するイメージファイルを指定する。
・BackgroundRepeat repeatX
・BackgroundRepeat repeatY
→ イメージ配置方法を指定する。repeatXは横方向/repeatY縦方向。
・BackgroundRepeat.REPEAT
→ 基準位置から、画像を並べる(画像が入りきらない場合は途中で切れる)
・BackgroundRepeat.NO_REPEAT
→ 基準位置に画像を一つだけ配置する。
・BackgroundRepeat.ROUND
→ イメージが途中で切れないサイズに自動調整してくれる。
・BackgroundPosition position
→ イメージを配置する際の基準位置を指定する。
・BackgroundPosition.DEFAULT → 基準位置をデフォルト(左上)に設定する。
・BackgroundPosition.CENTER → 基準位置を中央に設定する。
・BackgroundSize size
→ イメージのサイズを指定する。
・指定したイメージのサイズをそのまま使用する場合はBackgroundSize.DEFAULTを指定。
・指定したイメージのサイズを変更する場合は、BackgroundSizeのインスタンスを作成して指定する。
<< クラスBackgroundSize >>
イメージのサイズ指定するクラスです。
public BackgroundSize( double width , double height , boolean widthAsPercentage , boolean heightAsPercentage , boolean contain , boolean cover )
・double width
→ イメージサイズを横幅を指定する。
・double height
→ イメージサイズを縦幅を指定する。
・boolean widthAsPercentage
・boolean heightAsPercentage
→ 上記「width/height」の値が、ピクセル(true)/パーセンテージ(false)であるか
を指定する。
パーセンテージ(false)の場合は、1以下(0.01~1)の値を指定する。
・boolean contain
→ リージョン内に収まるようにイメージのサイズを最大化する必要があるか否かを
指定する。
・boolean cover
→ リージョンをカバーするようにイメージのサイズを設定する必要があるかどうか
を指定する。
■使用例
例1)単色の背景
青 / 角の丸み:0 / 余白なし
Label label = new Label("ラベル");
label.setBackground(
new Background(
new BackgroundFill( Color.BLUE , new CornerRadii(0) , Insets.EMPTY )
)
);

例2)単色の重ね塗り
青 / 角の丸み: 0 、余白なし
赤 / 角の丸み:45 、余白:20
Label label = new Label("ラベル");
label.setBackground(
new Background(
new BackgroundFill( Color.BLUE , new CornerRadii(0) , Insets.EMPTY ),
new BackgroundFill( Color.RED , new CornerRadii(45) , new Insets(20,20,20,20) )
)
);


コメント