Java6で追加されたGroupLayout(Matisse)をSwingBuilderから使ってみたらどうなるか、試してみました。元ネタは、LayoutManagerShowdownのGroupLayoutからです。スクリプトはhttp://www.tobikkiri.org/files/groovy/GroupLayoutDemo.groovyに置きました。GroupLayoutでは、Swingでの一般的なレイアウトマネージャとはレイアウトの指定方法が異なり、縦方向のレイアウトと横方向のレイアウトを別々に指定します。SwingBuilderでは、普通ならばレイアウトの指定を部品の作成時に指定しますので、2カ所以上のレイアウト指定には対応できません。今回の例では、部品は一旦idを振って(もしくは変数に設定して)作成した後で、Swingでの方法と同じ様にしてレイアウトマネージャに設定する
Swingのレイアウトの一つである、GroupLayoutを使ってみよう。このレイアウトはJ2SE6から追加された、比較的新しいレイアウトである。 本来は、IDEのデザイナでコードを自動生成していくような使い方を想定しているようだが、ハンドコーディングすることももちろん可能である。しかし、考え方は少しややこしい。 以下のような画面を構築することを考えてみる。 各コンポーネントには、以下のような名前を付けておいた。 GroupLayoutを使うには、水平方向のレイアウト定義と垂直方向のレイアウト定義をしなければならない。 各コンポーネントはこれらの両方のレイアウトに属している必要がある。 水平グループの定義は以下のようなイメージで行う。 青で示したのがSequentialGroup,赤で示したのがParallelGroupである。 実際のコードは以下のようになる。 layout.
先週に引き続き,今週もコンポーネントのレイアウトに関する話題です。Java SE 6で新たに導入されたレイアウト・マネージャjavax.siwng.GroupLayoutクラスを紹介します。 GroupLayoutクラスは,もともとNetBeans 5.0で導入されたMatesseというGUIビルダーで使用されていたものです。NetBeansではGUIのデザインを直感的に行うことができ,複雑な配置でも容易に作成できます。 Matisseで導入されたGroupLayoutクラスは次のような特徴を持っています。 レイアウトの自由度が高い コードの自動生成が容易 Java SE 6にGroupLayoutクラスが取り入れられたので,今後は他のGUIビルダーでもGroupLayoutクラスが採用されることが予想されます。 GroupLayoutクラスはツールで使われることが前提かもしれませんが,そ
このシリーズの一覧はこちら はじめに 自分のSwing力の無さに愕然としたので、ちょこちょこサンプルを作ってはまとめてゆく。故にちょこちょこ記事は加筆修正されてゆく予定です。 まず何はともあれframeを作らないと始まらないですよね、ということでframeからスタート。 クラス階層 javax.swing Class JFrame java.lang.Object extended by java.awt.Component extended by java.awt.Container extended by java.awt.Window extended by java.awt.Frame extended by javax.swing.JFrame JFrame (Java Platform SE 6) frmaeの実体は javax.swing.JFrame となります。 ドキュメ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く