flash.display パッケージのとりあえずのまとめ

これまで紹介してきたクラスは flash.display パッケージに含まれているクラスの主要メンバーです。少し乱暴な言い方をしてしまうと、flash.display パッケージは AS2 での MovieClip が持っていた役割を再編成したものと言えるでしょう。各クラスの役割も明確になり、使いやすくなったのではないかと思います。AS2 には無かったコンセプトがいくつも出てきましたが、AS3 でプログラミングする上では外せない部分ですので実際にいろいろと試してみていただければと思います。まだアルファ版のため ”本当はこう動くはずじゃないかな?” という期待と違う動きをすることもしばしばあります。どうもバグらしいと思ったら時間のあるときで構いませんのでレポートしてください。英語が面倒な方は、当面私宛に送っていただいてもOKです。

説明だけでは分かりにくかったかも、ということで最後に簡単なサンプルコードを載せておきます。(HelloWorld です。ベタで済みません。) サンプルコードでは、コンストラクタがいわゆる main() 関数の代わりをしています!ActionScript3 ではスクリプトだけで Flash アプリケーションが出来てしまうのですね。もう fla ファイルとか mxml ファイルとかの単なる補助ではありません。ここに AS3 の可能性をちょっと感じてしまったりします。

package {
import flash.display.Sprite;
import flash.display.TextField;
import flash.text.TextFormat;
import flash.events.Event;
import flash.events.EventType;
import flash.geom.Point;
import flash.geom.Rectangle;
// Sprite のサブクラスを作成 public class HelloWorld extends Sprite {
// プライベート変数を宣言 private var label:TextField; private var target:Point = new Point();
// コンストラクタ public function HelloWorld() { createLabel(); addEventListener(EventType.ENTER_FRAME, enterFrameListener); }
// TextField に Hello World を表示させる private function createLabel():Void { label = new TextField(); label.text = "Hello World";
var format:TextFormat = new TextFormat(); format.font = "Verdana"; format.color = 0xFF0000; format.size = 16; label.setTextFormat(format);
// ディスプレイリストに追加 addChild(label); }
// enterframe のイベント処理 public function enterFrameListener(event:Event):Void { var current:Point = label.getBounds(this).topLeft; if (Point.distance(target, current) < 1) { resetTarget(); } label.x += (target.x - label.x) / 8; label.y += (target.y - label.y) / 8; }
// ターゲット座標の設定 private function resetTarget():Void { target.x = Math.random() * stage.stageWidth - 100; target.y = Math.random() * stage.stageHeight - 10; } }
}

トラックバック(0)

トラックバックURL: http://cuaoar.jp/mt4/mt-tb.cgi/1

コメント(3)

ã?“ã?®ã‚µãƒ³ãƒ—ルコードを動作ã?•ã?›ã‚‹ã?Ÿã‚?ã?«ã€?もã?†å°‘ã?—詳ã?—ã??解説ã?—ã?¦ã??れã?¾ã?™ã?‹ï¼Ÿ

このブログで勉強させていただいてます。
クラスパッケージの構成変更のためだと思うのですが、上記サンプルソースのままだと「Flash Professional 9 ActionScript 3.0 Preview」環境で動きませんでした。動くように修正したソースを、僕のblog内にエントリさせていただきました。
http://www.trick7.com/blog/2006/07/25-230128.php
こちらのソースを使用させていただきましたので、不都合・僕の誤解等ありましたら記事の削除・修正いたします。よろしくお願い致します。

tera さん、こんにちは。

ベータ中の記事は修正の必要なものがたくさんあるのになかなか手がつけられません。ですので修正情報を公開していただけると助かります。トラックバックできるようにしないとですね。

2014年1月

Sun Mon Tue Wed Thu Fri Sat
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
レンタルサーバー

月別 アーカイブ

Powered by Movable Type 4.261