目次> 第3章 | TOPUPPREVNEXT |
3.1節で、プログラムの構造の概要を紹介しました。 感覚的な説明ですので、感じをつかんでください。 より厳密には10章で取り扱います。
レイアウト Layout のうち、 FlowLayout(3.1節)、 GridLayout(3.2節) 、BorderLayout(3.4節) を紹介しました。 Appendix F にレイアウトのまとめがあります。
3.3節は応用ですので、解りにくかったらとばして4章にすすみましょう。
3.1節の FlowLayout は、基本ですので指定の仕方を理解しましょう。
複数のモノを表示するために必要な指定です。
枠付のラベルのために、
GridLayout で 縦、横 両方の指定をしても意味がありません。縦方向の行数が指定されれば、 その行数を超えないように、列数が調整されます。行数に ゼロを指定した場合に、 列数の指定が有効になります。
横方向に2個づつ(つまり縦に2列)並べたい場合は、
MyProfileX.java の 実行結果
縦に3行並べたい場合は
行数優先の例 MyProfileY9.java
上の結果のように、縦3行という指定が優先されます。
並べる方向は横方向である点に注意してください。
3の倍数でない個数を表示する場合は若干複雑です。 興味のある方は、Appendix F の java.awt.GridLayout を参照してください。
FlowLayout の場合は、
![]() |
縦長にすると |
![]() |
GridLayout や、BorderLayout では、内側のラベルが広がるため、ラベルに 貼る文字列を 右詰めにしなければなりません。 文字列を右詰めにする RLabel という クラスをつくってみましょう。
class RLabel extends JLabel{ public RLabel(String s){ super(s); setHorizontalAlignment( SwingConstants.RIGHT ); } }
JLabel のコンストラクタに水平方向の位置を指定する方法もあります。
この2つのプログラムを比較してどう感じますか?
ラベルには、文字列に加えてイメージを貼り付けることができます。
ラベルについては、
Appendix A の java.swing.JLabel で
もう少し詳しく解説しています。
背景色については、4.1節に進みましょう。
更新日:2006/04/06 |