GUI③レイアウト フローレイアウト | のんびりした人の日記

のんびりした人の日記

仕事の愚痴とアニメ関連のことを書いていきます。

今回はフローレイアウトで作る時について。


まずは、BorderLayoutと同様にレイアウトのオブジェクトを生成します。

FlowLayout fl=new FlowLayout();


次にContainerクラスのオブジェクトつまりパーツを載せていく土台をFlowLayoutのデザインにするという作業をしますが、命令文一つです。


cont.setLayout(fl);


setLayoutというメソッドはContainerクラスのものです。かっこ内にはレイアウトのオブジェクトを入れます。それによって土台のデザインが変更されます(土台自体のデザインというわけではなく、パーツの置かれ方が変わるという方が正確かな)。


あとは前回同様にコンポーネントを追加していくだけ。


FlowLayoutの場合は、追加したらその順番にコンポーネントが並べられるので、BorderLyaoutのようにコンポーネントを配置する場所を指定する必要がありません。なので、


cont.add(btn1);


といった感じでおけ!


FlowLayoutオブジェクトを生成する際に、右辺のかっこないを空欄にしておくと、コンポーネントの並び方は中央揃えで左から順番に並べられますが、設定によってはいろいろと並び方を変えることができます。また、コンポーネント間の間隔もここで設定することができます。


FlowLayout lf=new FlowLayout(配置引数,水平方向の間隔,垂直方向の間隔);


上記の右辺のについて左から順番に説明を。

配置引数というのは、コンポーネントをどのように並べていくかを決めるもので、以下のようなものがあります。

・LEFT:左から並べる

・RIGHT:右から並べる

・CENTER:中央揃え(デフォルト)

・LEADING:全体として左寄せで左から並べる

のんびりした人の日記-FlowLayout-LEADING


・TRAILING:全体として右寄せで左から並べる


のんびりした人の日記-FlowLayout-TRAILING


これらの用い方は、配置引数のところで「FlowLayout.」に続けて上記のいずれかを続けて記述すればいいです。


また、コンポーネント間の間隔を決める第2、第3引数については整数型の値を記述します。この時の間隔の単位はピクセルで設定されます。



また、コンポーネントの間隔の設定はメソッドを使ってやることもできます。

FlowLayoutクラスのオブジェクトのsetHgap(int hgap)で水平方向の間隔を、setVgap(int Vgap)で垂直方向の間隔を設定することができます。

このときは、FlowLayoutオブジェクトの生成時にはコンポーネントの配置方法のみを引数に記述するだけで大丈夫です。



こんなもんでしょうかね。眠い。。。。。。。