電子書籍の厳選無料作品が豊富!

MCのタイムラインから別のところにある関数を呼び出すにはどのように記述すればよいのでしょうか?


たとえば、メイン(一番上)のタイムラインに、次の関数が定義されていたとします。
function aaa(){
trace("ok");
}

この関数をstage直下に配置されたムービークリップ「testMC」のタイムラインから実行したいとします。
testMCのタイムラインにどのように書けばよいのでしょうか?
stage.aaa();
root.aaa();
など、いろいろためしてみましたがダメでした・・・
誰か助けてください。

A 回答 (1件)

私もAS2.0から3.0への移行勉強中なので詳しく説明できませんが、_rootはなくなりまして、そのかわり_rootプロパティとなったようです。



コツとしましては
testMCのなかで
_root.aaa();
としたいところを

まずルートのプロパティをムービークリップオブジェクトとします
var rootObj : MovieClip = this.root as MovieClip;
それから
rootObj.test();
で実行できました。
まとめると

[メインタイムライン]
function aaa(){
trace("ok")
}

[testMC]
this.addEventListener(MouseEvent.CLICK , onClick)
var rootObj:MovieClip = this.root as MovieClip;
function onClic(event:MouseEvent):void{
rootObj.test();
}

以上でいかがでしょうか?
    • good
    • 0
この回答へのお礼

おお!できました!
おかげさまで制作の続きができます。
協力してくださってありがとうございました。

お礼日時:2008/02/29 01:09

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!