2009年07月03日 04:03
パーマリンク | http://www.kantenna.com/cgi-bin/mt/mt-tb.cgi/470
だいぶ読んでないActionScript3の本が 溜まってきたので今月から手をつけようかと思います。
ActionScriptはまったくわからないのでとりあえず基礎から。
まずはこれ。
/ 金額 : ¥ 2,940
ActionScriptでは多数のクラスが最初から用意されている。 基本的にObjectクラスをルートとした階層構造っぽくなっていて MovieClipクラスも様々なものを継承している模様
| height:Number | 表示オブジェクトの高さを示します (ピクセル単位)。 |
|---|---|
| width:Number | 表示オブジェクトの幅を示します (ピクセル単位)。 |
| scaleX:Number | 基準点から適用されるオブジェクトの水平スケール (percentage) を示します。 |
| scaleY:Number | オブジェクトの基準点から適用されるオブジェクトの垂直スケール (percentage) を示します。 |
| alpha:Number | 指定されたオブジェクトのアルファ透明度値を示します。 |
| x | 親 DisplayObjectContainer のローカル座標を基準にした DisplayObject インスタンスの x 座標を示します。 |
| y | 親 DisplayObjectContainer のローカル座標を基準にした DisplayObject インスタンスの y 座標を示します。 |
クラスのリファレンス本が必要かな・・・
Flashのキーフレームにスクリプトを記述した場合、 thisはメインのタイムラインが参照される。
ムービークリップの中のムービークリップを指定する場合 .演算子で繋げればよい。
parentObject.childObject.height = 100;
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
addEventListener()はEventDispatcherクラスで定義されているので EventDispatcherクラスを継承しているもので利用できる。
イベントハンドラ名はjavascriptとは異なる。
よく使いそうなMouseEventクラスで定義されてる定数
| CLICK : String = "click" | [static] click イベントオブジェクトの type プロパティ値を定義します。 |
|---|---|
| DOUBLE_CLICK : String = "doubleClick" | [static] doubleClick イベントオブジェクトの type プロパティ値を定義します。 |
| MOUSE_DOWN : String = "mouseDown" | [static] mouseDown イベントオブジェクトの type プロパティ値を定義します。 |
| MOUSE_MOVE : String = "mouseMove" | [static] mouseMove イベントオブジェクトの type プロパティ値を定義します。 |
| MOUSE_OUT : String = "mouseOut" | [static] mouseOut イベントオブジェクトの type プロパティ値を定義します。 |
| MOUSE_OVER : String = "mouseOver" | [static] mouseOver イベントオブジェクトの type プロパティ値を定義します。 |
| MOUSE_UP : String = "mouseUp" | [static] mouseUp イベントオブジェクトの type プロパティ値を定義します。 |
| MOUSE_WHEEL : String = "mouseWheel" | [static] mouseWheel イベントオブジェクトの type プロパティ値を定義します。 |
| ROLL_OUT : String = "rollOut" | [static] rollOut イベントオブジェクトの type プロパティ値を定義します。 |
| ROLL_OVER : String = "rollOver" | [static] rollOver イベントオブジェクトの type プロパティ値を定義します。 |
説明がよくわからない。
とりあえずaddEventListenerの第一引数にここら辺の値を渡すと実行できる。
start_button.addEventListener(MouseEvent.CLICK, circleMove);
var i:int = 0;
function circleMove(event:MouseEvent):void
{
circle01.x -= 10;
if (i == 0) {
this_value.appendText(this.name);
}
i++;
}
root1ってことはメインのタイムラインってことか。
+演算子を使うとFlashから警告がでる。appendText()より何倍も遅いとのこと
ActionScriptで条件式の結果がfalseとなるのは以下
クラスはいずれかのパッケージに属している。
トップレベル以外のクラスはインポートしないと利用できないが flashのフレームアクションに記述する場合、基本的なものは省略できる。
変数を初期化しない場合、デフォルト値として下記の値が設定される。
| データ型 | デフォルト値 |
|---|---|
| Boolean | false |
| int | 0 |
| Number | NaN |
| Object | null |
| String | null |
| uint | 0 |
| 宣言されていない (型注釈 * と同じ) | undefined |
| ユーザー定義クラスを含むその他すべてのクラス | null |
/ 金額 : ¥ 2,940
/ 金額 : ¥ 2,940
1-5
6-10