HOME HTML+CSS ビジュアル プログラミング その他 サイトマップ リンク


== ActionScript 3.0 ==

■>>>>> オブジェクト
オブジェクトはプロパティと呼ばれる複数の値から構成された複合データです。インスタンス名をもち、各プロパティは名前と値の一対からなっています。ボタンやテキストフィールドのほかに、さまざまな目的で使用する定義済みオブジェクト(クラス)が用意されています。

<<<■ 編集エリアに配置するオブジェクト
オブジェクトの種類 内容
ムービークリップ
インスタンス
ムービークリップシンボルとしてライブラリに登録され、編集エリアに配置されたもの
ボタンインスタンス ボタンシンボルとしてライブラリに登録され、編集エリアに配置されたもの
グラフィックインスタンス グラフィックシンボルとしてライブラリに登録され、編集エリアに配置されたもの
シェイプ 描画ツールで直接編集エリアに描かれた線や塗り図形
静止テキスト 文字ツールで直接編集エリアに作成された静止テキスト
ダイナミックテキスト・
テキスト入力
文字ツールで直接編集エリアに作成されたダイナミックテキストおよびテキスト入力
ビットマップインスタンス 読み込まれてライブラリに登録されたビットマップファイルが編集エリアに配置されたもの
その他のインスタンス 読み込まれてライブラリに登録されたビデオなど形状のあるファイルが編集エリアに配置されたもの


<<<■ パブリック プロパティ
プロパティ 内容
accessibilityProperties この表示オブジェクトの現在のアクセシビリティオプションです。
alpha 指定されたオブジェクトのアルファ透明度値を示します。
blendMode 使用するブレンドモードを指定する BlendMode クラスの値です。
cacheAsBitmap true に設定されている場合、表示オブジェクトの内部ビットマップ表現が Flash Player にキャッシュされます。
filters 表示オブジェクトに現在関連付けられている各フィルタオブジェクトが格納されているインデックス付きの配列です。
height 表示オブジェクトの高さを示します (ピクセル単位)。
loaderInfo [read-only] この表示オブジェクトが属するファイルのロード情報を含む LoaderInfo オブジェクトを返します。
mask 呼び出し元の表示オブジェクトは、指定された mask オブジェクトによってマスクされます。
mouseX [read-only] マウス位置の x 座標を示します (ピクセル単位)。
mouseY [read-only] マウス位置の y 座標を示します (ピクセル単位)。
name DisplayObject のインスタンス名を示します。
opaqueBackground 表示オブジェクトが特定の背景色で不透明であるかどうかを指定します。
parent [read-only] この表示オブジェクトを含む DisplayObjectContainer オブジェクトを示します。
root [read-only] ロードされた SWF ファイル内の表示オブジェクトの場合、root プロパティはその SWF ファイルが表す表示リストのツリー構造部分の一番上にある表示オブジェクトとなります。
rotation DisplayObject インスタンスの元の位置からの回転角を度単位で示します。
scale9Grid 現在有効な拡大 / 縮小グリッドです。
scaleX 基準点から適用されるオブジェクトの水平スケール (percentage) を示します。
scaleY オブジェクトの基準点から適用されるオブジェクトの垂直スケール (percentage) を示します。
scrollRect 表示オブジェクトのスクロール矩形の境界です。
stage [read-only] 表示オブジェクトのステージです。
transform [read-only] 表示オブジェクトのマトリックス、カラー変換、ピクセル境界に関係するプロパティを持つオブジェクトです。
visible 表示オブジェクトが可視かどうかを示します。
width 表示オブジェクトの幅を示します (ピクセル単位)。
x 親 DisplayObjectContainer のローカル座標を基準にした DisplayObject インスタンスの x 座標を示します。
y 親 DisplayObjectContainer のローカル座標を基準にした DisplayObject インスタンスの y 座標を示します。


<<<■ ターゲットパス
オブジェクトのプロパティなどは、インスタンスごとに管理されています。これらにアクセスするには、どのインスタンスのプロパティであるかを指定しなければなりません。そのためFlashではオブジェクト(=インスタンス)の階層構造となっています。
メインタイムライン(root)を中心として、入れ子になったオブジェクトへアクセスします。目的のオブジェクトへアクセスする方法は絶対パスと相対バスの2つの方法があります。

ターゲットパスの例

rootに「mc_1」というインスタンス名のムービークリップを配置し、そのムービークリップの中にさらに「mc_2」というインスタンス名のムービークリップが配置されています。
階層構造
root
mc_1
mc_2

mc_1からroot、mc_1、mc_2へ、ムービークリップを指定する場合の絶対パスと相対バスの表記は、次の通りです。

絶対バスの表記
対象のムービークリップ バスの表記
メインタイムライン MovieClip(root)
mc_1 MovieClip(root).mc_1
mc_2 MovieClip(root).mc_1.mc_2


相対バスの表記
バスの表記 内容
MovieClip(parent) ムービークリップが入れ子になっているとき、parentは相対的に自分より1つ上の階層のインスタンスを指し示します。
this thisはスクリプトが書かれているインスタンスを指し示します。すなわち自身のオブジェクトにアクセスできます(thisは省略可能)。




<<<■ プロパティへのアクセス方法
プロパティへのアクセス方法は、インスタンスを特定するターゲットパスを指定し、その後ろにドット演算子「.」、そしてプロパティ名を記述します。


プロパティへのアクセス方法の例

//my_objはターゲットパス
//heightはプロパティ名

sasaki = my_obj._height; //my_objの高さの値を参照し、変数sasakiへ代入

my_obj._height = 50; //my_objの高さの値を50として代入




■>>>>> イベントとイベントリスナー
クライアントが何かしらの操作(クリックやマウスポインターの移動など)を行った場合、これらの操作に対して処理を行うプログラミングがされています。これらの出来事のことをイベントといいます。
イベントの発生時に処理を行うためには、あらかじめイベントを指定し、対応した処理を記述しておく必要があります。 要するにイベントを受けることができるクラスにリスナー登録して待っています。そしてイベントが発生すると登録しておいたメソッドが呼ばれます。
addEventListener()メソッドはイベント処理関数を呼び出す為のイベントターゲットを指定するメソッドです。つまりFlashでは、イベントを実行させるきっかけとなるオブジェクト(ボタンなどのオブジェクト)を決めます。



■>>>>> アクション

アクション名 内容
フレームアクション ActionScript3.0ではタイムラインのフレームにコードを記述します。これをフレームアクションと呼びます。スクリプトを記述するとキーフレームに「a」のマークが表示されます。再生ヘッドが「a」のマークに達したときに、1度だけ実行されます。


<<<■ MovieClip(パブリック メソッド)


メソッド名 内容
MovieClip() 新しい MovieClip インスタンスを作成します。
gotoAndPlay(値) 指定されたフレームで SWF ファイルの再生を開始します。
gotoAndStop(値) このムービークリップの指定されたフレームに再生ヘッドを送り、そこで停止させます。
nextFrame() 次のフレームに再生ヘッドを送り、停止します。
nextScene() MovieClip インスタンスの次のシーンに再生ヘッドを移動します。
play() ムービークリップのタイムライン内で再生ヘッドを移動します。
prevFrame() 直前のフレームに再生ヘッドを戻し、停止します。
prevScene() MovieClip インスタンスの直前のシーンに再生ヘッドを移動します。
stop() ムービークリップ内の再生ヘッドを停止します。


<<<■ MovieClip(パブリック プロパティ)

イベントの種類 内容
currentFrame MovieClip インスタンスのタイムライン内の再生ヘッドが置かれている
フレームの番号を示します。


<<<■ MouseEvent オブジェクト
EventDispatcher.addEventListener()を使用する際に、検出する特定のマウスイベントをtypeパラメータに設定します。
インスタンス名.addEventListener(MouseEvent.CLICK, 関数名);
パブリック定数(マウスに発生するイベント)
AS3.0ではメインのタイムラインか、ムービークリップシンボルのタイムラインにしか記述できない。
イベントの種類 内容
CLICK クリック(click イベントオブジェクト)
DOUBLE_CLICK ダブルクリック(doubleClick イベントオブジェクト)
MOUSE_DOWN マウスのボタンを押す(mouseDown イベントオブジェクト)
MOUSE_MOVE マウスポインターが移動した(mouseMove イベントオブジェクト)
MOUSE_OUT マウスポインターが目的のオブジェクトの外から内側へ撤退した(mouseOut イベントオブジェクト) (あるオブジェクトの内側に別のオブジェクトを配置した場合、マウスポインターを動かしていくと、最初に外側のオブジェクトでイベントが発生し、次に、内側のオブジェクトにマウスポインターが重なると、内側のオブジェクトにイベントが発生する)
MOUSE_OVER マウスポインターが目的のオブジェクトの外から内側へ侵入した(mouseOver イベントオブジェクト) (あるオブジェクトの内側に別のオブジェクトを配置した場合、マウスポインターを動かしていくと、最初に外側のオブジェクトでイベントが発生し、次に、内側のオブジェクトにマウスポインターが重なると、内側のオブジェクトにイベントが発生する)
MOUSE_UP マウスの押したボタンを開放する(mouseUp イベントオブジェクト)
MOUSE_WHEEL マウスのホイールが回転されたか調べる(mouseWheel イベントオブジェクト)
ROLL_OUT マウスポインターが目的のオブジェクトの内側から外へ撤退した(rollOut イベントオブジェクト) (あるオブジェクトの内側に別のオブジェクトを配置した場合、マウスポインターを動かしていくと、最初に外側のオブジェクトでイベントが発生し、次に、内側のオブジェクトにマウスポインターが重なってもイベントは発生しない)
ROLL_OVER マウスポインターが目的のオブジェクトの外から内側へ侵入した(rollOver イベントオブジェクト) (あるオブジェクトの内側に別のオブジェクトを配置した場合、マウスポインターを動かしていくと、最初に外側のオブジェクトでイベントが発生し、次に、内側のオブジェクトにマウスポインターが重なってもイベントは発生しない)


<<<■ ムービークリップアクション
フレーム再生(時間単位)ごとに発生するイベント
イベントの種類 内容
Event.ENTER_FRAME ENTER_FRAMEで登録されたメソッドはフレームレートで決められた回数だけ繰り返し実行されます。 例えば、30fps(Frames Per Second)であれば1秒間に30回更新されますし、24fpsであれば24回更新されます。






Copyright (C) 2010 SASAKI. All Rights Reserved.