FLASHCS3・・・、本当に便利ですね。(といっても体験版ですが)
悠々自適な旅をさせて貰っています。
今回は、“ドットシンタックスを利用した参照の変化”について、気になった部分を挙げてみます。
AS2では、動的にattachMovieやcreateEmptyMovieClipを用い、深い階層にネストしたObjectに対しても、容易にドットシンタックスで辿る事が可能でした。
AS3からは、ドットシンタックスによる動的な参照が難しくなりました。
参照する際には以下の対策が必要です。
- 生成した際に参照を保持しておく
- getChildByNameやgetChildAtで任意参照を行う
以下に例を記します。
/** AS2 新規MCを生成する */ function newChild(level:MovieClip, name:String):Void { level.createEmptyMovieClip(name, level.getNextHighestDepth()); } newChild(this, "child1"); trace("参照 : "+this.child1._name); //child1
/** AS3 新規MCを生成する */ import flash.display.*; function newChild(level:MovieClip, name:String):void { var mc:MovieClip = new MovieClip(); mc.name = name; level.addChildAt(mc, level.numChildren); } newChild(this, "child1"); trace("参照 : "+this.child1); //undefined trace("参照 : "+this.getChildByName("child1").name); //child1 trace("参照 : "+this.getChildAt(0).name); //child1
但し、リンケージクラスを設定してnewしたMCの中に予め深い階層を持つMCがある場合、それらのMCに対してドットシンタックスで辿る事が可能です。
少し不思議な感じですね。
今まで、ドットシンタックスを多く使う機会が多かった方は、 少し足止めを喰らうのではないでしょうか。
ではまた!
_トラックバック(0)
TrackbackURL : http://level0.kayac.com/cgi-bin/mt/mt-tb.cgi/850
- AfterEffects
- AIR
- android
- Arduino
- AS2
- AS3
- as3
- BitmapData
- CHECKMATE
- crossdomain
- CS4
- Date
- DisplacementMapFilter
- Event
- event
- ExternalInterface
- FileReference
- FireBug
- FireFox
- Flash Lite
- FlashDevelop
- FlashPlayer10
- flash時計
- Flex
- Font
- GoogleMapsAPI
- INFINITY TANK BATTLE
- JSFL
- JSON
- Mobile
- mxp
- PaperVision3D
- Particle
- Progression
- Sound
- TextField
- Tips
- tool
- trace
- wonderfl
- Wonderfl
- xml
- アニメーション
- サンプルコード
- タイムライン
- デバッガ
- バグ
- フレーム
- ブログパーツ
- 爆速

(0)






_コメントする