[AS3.0]DisplayObject.parent
August 29, 2008 12:25 PM0
ActionScript2.0で使っていた_parentの振る舞いもActionScript3.0では少し異なります。
たとえばメインタイムラインにムービークリップを設置し、内部に次のようなスクリプトを記述したとします。
parent.stop();
プレビューするとエラーが表示されます。
メインタイムラインはムービークリップなのに何故でしょう??
これは、ActionScriptではparentプロパティが表示オブジェクト(DisplayObject)としてのみ理解されるからです。実際にはメインのタイムライン(=ムービークリップ) であっても、Flashにはそれが理解できず、もっと大まかなくくりの表示オブジェクトとして扱われるのです。
ですから、表示オブジェクトの共通メソッドではないstop()は不明なメソッドとなってしまします。
回避するにはparentがムービークリップであるということをFlashに知らせる必要があります。
MovieClip(parent).stop();■as演算子
var mc:MovieClip = parent as MovieClip; mc.stop();