Flash CS4 Professional ActionScript 2.0

コレクションプロパティ

Flash で新規カスタムコンポーネントを作成する場合、プロパティ値をユーザーが編集できるようにすることが可能です。こうしたプロパティは、コレクションプロパティと呼ばれます。ユーザーはプロパティ値を [値] ダイアログボックスで編集することができます。このダイアログボックスは、コンポーネントの [パラメータ] タブ内のテキストボックスから開きます。

通常、コンポーネントには、コンポーネントユーザーが求める一定の要件を満たすだけの柔軟性が備わっていますが、特定のタスク向けの機能も含まれています。コンポーネントの柔軟性のためには、コンポーネント内のプロパティにも柔軟性が求められます (つまり、コンポーネントによっては、プロパティの値だけでなくコンポーネントのユーザーによってもプロパティの変更が可能です)。

コレクションプロパティを使用することにより、1 つのオブジェクトモデルの中で一定でない個数の編集可能プロパティを作成することが可能になります。Flash では、Collection クラスを使用することにより、[コンポーネントインスペクタ] パネルでこうしたプロパティを管理することができます。

具体的には、Collection クラスは、関連性のあるオブジェクト (コレクションアイテムと呼ばれる) で構成されるグループを管理するためのヘルパークラスです。コンポーネントのプロパティをコレクションアイテムとして定義し、[コンポーネントインスペクタ] パネルを通じて操作できるようにすると、ユーザーはオーサリング時に [値] ダイアログボックスでコレクションアイテムを追加、削除、および変更できます。

値ダイアログボックス

コレクションおよびコレクションアイテムを定義する方法は次のとおりです。

  • コンポーネントの ActionScript ファイルで Collection メタデータタグを使用してコレクションプロパティを定義します。詳細については、Collection タグについてを参照してください。
  • 異なる Inspectable プロパティを持つ別の ActionScript ファイルで、コレクションアイテムをクラスとして定義します。

Flash でコレクションを使用すると、関連性のあるアイテムのグループをプログラム上で管理することが容易になります。旧バージョンの Flash では、関連性のあるアイテムのグループを管理するにはコンポーネントの作者がプログラムで複数の配列を同期させる必要がありました。

[値] ダイアログボックスだけでなく、プログラムから Collection のインスタンスと値を管理するために Collection インターフェイスおよび Iterator インターフェイスも用意されています。『ActionScript 2.0 コンポーネントリファレンスガイド』のCollection インターフェイスおよびIterator インターフェイスを参照してください。

この章では、次のセクションについて説明します。