next up previous
: GUIコンポーネントにおけるイベントの処理 : レイアウトマネージャ : GridLayout

レイアウトマネージャのネスト

ここまで,比較的シンプルなレイアウトマネージャの紹介をしてきた. さらに複雑なレイアウトを作成しようとする場合には,GridBagLayoutや,さらに はLayoutManagerインターフェイスを実装した自前のクラスを作成することで実現 できる. しかし,ここまで紹介したシンプルなレイアウトマネージャを階層的に用いることにより, かなりのレイアウトは実現できる.

レイアウトマネージャを階層的に用いるには,基本的なコンテナである Panel クラスのインスタンスを用いる. 以下にプログラム例を示す. ここではBorderLayoutの上(North)に,Panelクラスのインスタ ンスを追加し,このPanelクラスのインスタンスのレイアウトマネージャとして 0行3列のGridLayoutを指定することにより,図 [*]に示すよう な配置を実現している.




\begin{boxedminipage}{15cm}
\begin{verbatim}1: import java.applet.*;
2: impo...
...add(new Button(''North Right''));
22: }
23: }\end{verbatim}\end{boxedminipage}

図: レイアウトマネージャのネスト
\begin{figure}
\begin{center}
\epsfile {file=img/LayoutNest.eps,width=7cm}\end{center}\end{figure}



U-GM\murao 平成14年7月5日