初心者のためのFlash ActionScript講座
Flash ActionScript Helper
Home Menu

最終更新日: 2003年7月24日

シンボルとインスタンスのタイプ

グラフィック

アニメーションGIFに近い存在です。
タイムラインを使用したアニメーションを作成できますが、タイムラインにスクリプトを記述しても、再生時に無視され、実行されません。
また、ボタン、ムービークリップインスタンスからのスクリプトによる制御もできません。
スクリプトの記述、スクリプトによる制御はともにできませんので、スクリプトとはまったく縁がないインスタンスです。

グラフィックは、スクリプトの実行、スクリプトによるアクセスはできない



ボタン

Flash5までは、インタラクティブ・ムービーの要となるユーザーのキーボードやマウス操作を受け取る大切なパーツでした。
しかしMXからは、ムービークリップをボタンとして使用するしくみが導入されたため、その役割を独占する立場ではなくなりました。また、ボタンもムービークリップのようにオブジェクト(後述)として扱われるようになりましたが、制約や新たな問題も抱え込んだため、ボタンの使用を推奨しない人もいます。

ボタンは、ユーザーのマウス操作によって、自動的に「アップ」「オーバー」「ダウン」の各フレームに指定されたイメージを表示し、同時にマウスカーソルの形状を変更します。これらは、システムが自動的に行いますので、スクリプトによる制御はできません。 制御したい場合は、ムービークリップをボタン化して使用します。

ボタンは、ユーザーのマウス操作によって、自動的にマウスカーソルの形状や、表示イメージを変更します。
この制御はシステムが行い、スクリプトによる制御はできません。

「アップ」「オーバー」「ダウン」「ヒット」の各フレームにスクリプトを記述することはできませんが、インスタンスやイベントハンドラメソッド(中級編で解説予定)にスクリプトを記述して、自分自身や他のボタン、ムービークリップをコントロールできます。また他のボタン、ムービークリップからのスクリプトによる制御も可能です。

スクリプトでの制御を受け付ける場合には、インスタンスを特定するために、同一階層内でユニークな(他と重ならない)インスタンス名をつける必要があります。インスタンスを選択し、[ プロパティインスペクタ ] で指定します。半角英数字とアンダースコア( _ )(最初の文字は英字のみ)だけを使用してつけることをお勧めします。インスタンス名の後ろに接尾辞 '_btn ' をつけると、スクリプト入力時にコードヒントが表示されるようになります。
ActionScriptでは、ほとんどの場合、英字の大文字と小文字を区別しません。'btn1' と 'BTN1' は同じものと判断されます。また、ムービークリップや変数(「変数」参照)、関数(「関数」参照)と同じ名前をつけることもできませんので注意してください。

まちがいを減らすためにも、ふだんからインスタンス名を付けるように心がけましょう。

ボタンインスタンス名の付け方

またボタンは独立した変数管理空間を持ち、さまざまなプロパティの設定・参照が可能です。
プロパティは、特性、属性と呼ばれるオブジェクトを定義するさまざまなデータのことです。詳しくは「オブジェクト(概要)」をご覧ください。

ボタンとActionScript との関係は、以下のようになります。

  • 「アップ」「オーバー」「ダウン」「ヒット」の各フレームにスクリプトを記述することはできません。
  • ユーザーのマウス操作、キーボード入力を受け取ることができます。インスタンスのオブジェクトアクション(注1)、またはMXから導入されたイベントハンドラメソッドを記述すると、ムービークリップやボタンを制御できます。
  • インスタンス名を付けると、他のボタン、ムービークリップインスタンスからのスクリプトによる制御が可能です。
  • MXからは、ボタンもムービークリップと同じくオブジェクトとして扱われるようになりました。
ボタンは、自身のタイムラインにはスクリプトを記述できない。
他のボタン、ムービークリップと、スクリプトによる両方向のアクセスが可能


ムービークリップ

Flashではもっとも重要なシンボル、インスタンスで、ムービー内の独立した別ムービーと考えることができます。
タイムラインにActionScriptを記述して細かいコントロールができるほか、他のボタンやムービークリップからのスクリプトによる制御も可能です。

Flashで重要なターゲットパスの基準となるため、同一階層内でユニークな(他と重ならない)インスタンス名をつける必要があります。インスタンスを選択し、[ プロパティインスペクタ ] で指定します。インスタンス名の後ろに接尾辞 '_mc ' をつけると、スクリプト入力時にコードヒントが表示されるようになります。命名に関するその他の注意点はボタンと同じですので、そちらを参照してください。
ターゲットパスやムービーの階層については、別のページで説明します。

インスタンス名の付け方
ムービークリップインスタンスには、インスタンス名をつける必要があります。
インスタンスをクリック選択し [ プロパティインスペクタ ] で指定します。

ムービークリップは独立した変数管理空間を持ち、さまざまなプロパティの設定・参照が可能です。
またMXからは、ボタンとして使用することもできるようになりました。これについては別のページ(「ムービークリップのボタン化」)で説明します。

ActionScriptとの関係をまとめてみましょう。

  • キーフレーム(タイムライン)にスクリプトを記述して、実行することができます。
  • ユーザーのマウス操作、キーボード入力を受け取ることができます。対応したスクリプトをインスタンスのオブジェクトアクション(注1)、またはイベントハンドラメソッドとして記述することによって、自分自身や他のムービークリップ、ボタンを制御できます。
  • インスタンス名を付けると、他のボタン、ムービークリップインスタンスからのスクリプトによる制御が可能です。
  • ActionScriptでは、最も重要なインスタンスです。
スクリプトによる両方向のアクセスが可能


注1:オブジェクトアクション
タイムラインはシンボルで指定しますので、同じシンボルから生成されたインスタンスは、同じタイムラインを持つことになります。したがって、フレームに記述されたスクリプトはすべてのインスタンスで共通のものとなります。
これに対し、インスタンスごとに指定可能なスクリプトが、オブジェクトアクションです。ステージ上で、対象となるインスタンスを選択すると、[ アクション ] パネルのタイトルが「アクション - ボタン」または「アクション - ムービークリップ」になります。この状態でスクリプトを記述します。オブジェクトアクションを記述可能なインスタンスは、ボタンとムービークリップだけです。
オブジェクトアクションに関する詳細は「アクションのタイプ」をご覧ください。



・関連項目
シンボルとインスタンス
アクションのタイプ
変数
関数
オブジェクト(概要)
ムービークリップ
ターゲットパス
ムービークリップのボタン化
ボタン
イベントハンドラメソッド

(C)2000-2004 Ginga Baba. All rights reserved. お問い合わせ先:ginga@nifty.com
ページTOPへ
Home Menu