表示のプログラミングの基本

Flash Player 9 以降、Adobe AIR 1.0 以降

ActionScript 3.0 で構築された各アプリケーションには、 表示リスト と呼ばれる、表示されるオブジェクトの階層があります。表示リストには、アプリケーション内で表示されるエレメントがすべて含まれます。

<Display list hierarchy>

図に示すように、表示エレメントは次の 1 つ以上のグループに属します。

  • ステージ

    ステージは、表示オブジェクトの基本コンテナです。 各アプリケーションには 1 つの Stage オブジェクトがあり、この中に画面の表示オブジェクトがすべて含まれます。 ステージは、最上位コンテナで、表示リスト階層の最上位に位置します。

    それぞれの SWF ファイルには、関連する ActionScript クラスがあります。これは、SWF ファイルのメインクラスと呼ばれます。SWF ファイルが Flash Player または Adobe AIR 上で開かれると、このクラスのコンストラクター関数が呼び出され、作成されるインスタンス(常に表示オブジェクトの型になります)が Stage オブジェクトの子として追加されます。SWF ファイルのメインクラスは、必ず、Sprite クラスを拡張します(詳細については、 表示リストを使用するアプローチの利点 を参照)。

    DisplayObject インスタンスの stage プロパティからステージにアクセスできます。詳しくは、 Stage プロパティの設定 を参照してください。

  • 表示オブジェクト

    ActionScript 3.0 では、アプリケーション内で画面上に表示されるすべてのエレメントのタイプは、表示オブジェクトです。flash.display パッケージには DisplayObject クラスが含まれています。これは他の様々なクラスによって拡張される基本クラスです。これらの様々なクラスは、ベクターシェイプ、ムービークリップ、テキストフィールドなどの各種の表示オブジェクトを表します。 これらのクラスの概要については、 表示リストを使用するアプローチの利点 を参照してください。

  • 表示オブジェクトコンテナ

    表示オブジェクトコンテナは特殊な型の表示オブジェクトであり、独自の視覚的表現を持つだけでなく、それ自体が表示オブジェクトである子オブジェクトを含むこともできます。

    DisplayObjectContainer クラスは DisplayObject クラスのサブクラスです。DisplayObjectContainer オブジェクトには、子リスト内の複数の表示リストを含めることができます。例えば次の図は、様々な表示オブジェクトを含む Sprite という DisplayObjectContainer オブジェクトの型を示しています。

    <表示オブジェクトを含む Sprite>
    A.
    SimpleButton オブジェクト。 この型の表示オブジェクトには、「アップ」状態、「ダウン」状態、および「オーバー」状態があります。

    B.
    Bitmap オブジェクト。 この例では、Bitmap オブジェクトは Loader オブジェクトを使用して外部 JPEG からロードされました。

    C.
    Shape オブジェクト。 この「額縁」には、ActionScript で描画された丸みを付けた矩形が含まれています。Shape オブジェクトには、「ドロップシャドウ」フィルターが適用されています。

    D.
    TextField オブジェクト。

    表示オブジェクトの説明では、DisplayObjectContainer オブジェクトは 表示オブジェクトコンテナ 、または単に コンテナ と呼ばれます。 前に説明したように、ステージは表示オブジェクトコンテナです。

    表示可能な表示オブジェクトはすべて DisplayObject クラスを継承しますが、そのタイプは DisplayObject クラスの特定のサブクラスです。 例えば、Shape クラスまたは Video クラスにはコンストラクター関数がありますが、DisplayObject クラスにはコンストラクター関数はありません。

重要な概念と用語

次の参照リストに、ActionScript グラフィックのプログラミングで使用される重要な用語を示します。

アルファ
カラーの透明の度合い(より正確には不透明の度合い)を表すカラー値。例えば、アルファチャンネル値が 60% のカラーは、全強度の 60% だけを表示し、透明度 40% になります。

ビットマップグラフィック
コンピューターで、カラーピクセルのグリッド(行および列)として定義されているグラフィック。一般に、ビットマップグラフィックにはデジタル写真や類似したイメージが含まれます。

ブレンドモード
2 つの重なり合うイメージの内容の相互関係を指定する仕様。一般に、別のイメージの上にある不透明なイメージは、その下にあるイメージを単に遮り、まったく見えなくしますが、それ以外のブレンドモードでは、そのイメージのカラーが様々に混ざり合い、その内容は 2 つのイメージの組み合わせになります。

表示リスト
Flash Player および AIR によって目に見える画面の内容としてレンダリングされる表示オブジェクトの階層。ステージは表示リストのルートであり、ステージまたはステージのいずれかの子に関連付けられたすべての表示オブジェクトが表示リストを形成します(オブジェクトが、ステージの境界の外部にあるなど、実際にはレンダリングされていない場合でも)。

表示オブジェクト
Flash Player または AIR のある種の視覚的なコンテンツを表すオブジェクト。表示オブジェクトだけを表示リストに入れることができ、すべての表示オブジェクトクラスは、DisplayObject クラスのサブクラスです。

表示オブジェクトコンテナ
特殊な型の表示オブジェクトであり、(通常は)独自の視覚的表現を持つだけでなく、子オブジェクトを含むこともできます。

SWF ファイルのメインクラス
SWF ファイルの最も外側の表示オブジェクトのビヘイビアーを定義するクラスであり、概念上は、その SWF ファイル自体のクラスです。例えば、Flash オーサリングで作成された SWF では、メインクラスはドキュメントクラスになります。このクラスには、その他のすべてのタイムラインが含まれる「メインタイムライン」があり、SWF ファイルのメインクラスは、そのメインタイムラインがインスタンスになるクラスです。

マスク
イメージの特定の部分を非表示にする(または、逆にイメージの特定の部分だけを表示する)技術。マスクイメージの部分が透明になるので、その下の内容が透けて見えます。この用語は、ペンキが特定の場所に付かないように使用するマスキングテープと似ています。

ステージ
SWF の目に見えるすべての内容の基礎または背景である視覚的なコンテナ。

変換
図形の視覚的特性を調整すること。オブジェクトの回転、尺度の変更、シェイプの傾斜や歪み、色の変更など。

ベクターグラフィック
特定の特性(太さ、長さ、サイズ、角度、位置)を使用して描かれる線またはシェイプとしてコンピューターで定義されるグラフィック。