FaqFormExtendingFormsJa

他のフォームを拡張して独自のフォームを作成できますか?

他のフォームを作成する時の元になる (superclass) フォームを作成したい場合は、普通にその元のフォームを作成することができますが カスタムコンテナ Bean の作成 にあるような次の条件を満たしている必要があります:

  • bean である必要がある (パラメータなしの public コンストラクタ)
  • 使用するときにはコンパイル済みである (例えばフォームを拡張して変数する場合)
  • 空 (コンポーネントなし) あるいは委譲定義した空のコンテナを一つ持つこと

フォームを拡張して他のフォームを作成するには Bean Form テンプレートを使用しそのスーパークラスを元のフォームクラスに設定します。

元のフォームがいくつかのサブコンポーネントがあるにもかかわらず GUI ビルダーに 空のフォーム が表示されている場合は次の2つの理由が考えられます:

  1. 委譲定義した空のコンテナがないため、元のコンテナを GUI ビルダーがクリアした。 カスタムコンテナ Bean の作成 を参照しコンテナを委譲してください。
  2. あるいはコンテナ自体が委譲している。フォームが Window タイプで GUI ビルダーがデザイン領域で直接表示できない。コンテナの委譲しか表示しません。

注意:

  • フォームを拡張して新しいコンポーネントを追加することができ、元のフォームのプロパティーを変更することができます。
  • サブコンポーネントは変更することができません。また拡張したフォームからは元のフォームのレイアウトは変更できません。
  • 拡張したフォームをデザインする場合は元のフォームクラスの名前がインスペクタツリーに表示されます。(拡張されているクラスが表示されます)
  • 拡張したフォームでの変更は元のクラスには影響しません。
  • 元のフォームの変更は拡張したフォームすべてに影響があります。

"インタラクティブに開発を行う場合のヒント:"

元のフォームを変更した場合はコンパイルをする必要があります。そのフォームを拡張したフォームが開かれている場合、更新は自動的に適用されません。元のフォームクラスを再読み込みする必要があります。(簡単に行うには Ctrl+R をそれぞれのフォームで行ってください)


  バージョン: すべて
  コンポーネント: すべて

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo