FaqFormExtendingFormsJa
他のフォームを拡張して独自のフォームを作成できますか?
他のフォームを作成する時の元になる (superclass) フォームを作成したい場合は、普通にその元のフォームを作成することができますが カスタムコンテナ Bean の作成 にあるような次の条件を満たしている必要があります:
- bean である必要がある (パラメータなしの public コンストラクタ)
- 使用するときにはコンパイル済みである (例えばフォームを拡張して変数する場合)
- 空 (コンポーネントなし) あるいは委譲定義した空のコンテナを一つ持つこと
フォームを拡張して他のフォームを作成するには Bean Form テンプレートを使用しそのスーパークラスを元のフォームクラスに設定します。
元のフォームがいくつかのサブコンポーネントがあるにもかかわらず GUI ビルダーに 空のフォーム が表示されている場合は次の2つの理由が考えられます:
- 委譲定義した空のコンテナがないため、元のコンテナを GUI ビルダーがクリアした。 カスタムコンテナ Bean の作成 を参照しコンテナを委譲してください。
- あるいはコンテナ自体が委譲している。フォームが Window タイプで GUI ビルダーがデザイン領域で直接表示できない。コンテナの委譲しか表示しません。
注意:
- フォームを拡張して新しいコンポーネントを追加することができ、元のフォームのプロパティーを変更することができます。
- サブコンポーネントは変更することができません。また拡張したフォームからは元のフォームのレイアウトは変更できません。
- 拡張したフォームをデザインする場合は元のフォームクラスの名前がインスペクタツリーに表示されます。(拡張されているクラスが表示されます)
- 拡張したフォームでの変更は元のクラスには影響しません。
- 元のフォームの変更は拡張したフォームすべてに影響があります。
"インタラクティブに開発を行う場合のヒント:"
元のフォームを変更した場合はコンパイルをする必要があります。そのフォームを拡張したフォームが開かれている場合、更新は自動的に適用されません。元のフォームクラスを再読み込みする必要があります。(簡単に行うには Ctrl+R をそれぞれのフォームで行ってください)
バージョン: すべて
コンポーネント: すべて
- 日本語訳 : Masaki Katakai
- 英文 (翻訳したバージョン: 12)
- 日本語 NetBeans ユーザー FAQ へ戻る
