• 締切済み

ムービープレビュー時にエラーメッセージが出ます

FlashCS4で、AS3.0を使用しております。 フレーム195にインスタンス名「kebtn」として、そのボタンを設置して、さらには同じフレーム195には、先のボタンをクリックして作動するムービークリップ「インスタンス名:keanime」を設置し、keanimeのフレーム2からアニメを始めたいのです。フレーム195には下記のASを記述しました。 --------------------------------------------------------- stop(); kebtn.addEventListener(MouseEvent.CLICK, keClick); function keClick(evt:MouseEvent):void { keanime.gotoAndPlay(2); } ------------------------------------------------------------ その後、プレビューしますと、下記のエラーメッセージが表示されます。 ------------------------------------------------------------ TypeError: Error #1009: null のオブジェクト参照のプロパティまたはメソッドにアクセスすることはできません。 at keone_fla::MainTimeline/frame195() at flash.display::Sprite/constructChildren() at flash.display::Sprite() at flash.display::MovieClip() ------------------------------------------------------------ 「kebtn」をクリック後に「keanime」が開始されるようにしたいのです。どなたか解る方がいましたらアドバイス、ご指導をお願い致します。よろしくお願い致します。

みんなの回答

回答No.1

タイムラインに途中から出現した インスタンスはgotoAndStop直後には タイムラインからはアクセスできません 一度ENTER_FRAMEもしくはインスタンスのADDED_TO_STAGEを 待ってからkebtnのイベントリスナー登録をしてください とはいえオーサリングで置いたインスタンスには タイムラインからアクセスするしかないので 選択肢は前者しかないですが あるいはkebtnをスクリプトで生成しaddChildするか 1フレーム目で作っておいて隠しておいて 195フレーム目に来たら現れるようにするか 回避方法はいろいろあります 直前の質問の方も同じ所でつまずいていたようです AS3のひとつの関門なのでしょうね 実はヘルプのMovieClipのところに書いてたりするんですが ADDED_TO_STAGEを待ってくださいとしか書いてなくて アクセスできないから困ってんのに そいつのイベントを待てとはどういうことよ? みたいなカンジだったりするんですよね(笑)

gunhiro
質問者

お礼

H240S18B73さん、有難うございました。 早速ですが…。 H240S18B73さんの言われますように「1フレーム目で作っておいて隠しておいて195フレーム目に来たら現れるようにするか」って言うアドバイスから、そのようにやってみましたら、keanimeアニメが動きました。(他のやり方は自分には解らないので、このやり方が一番確実でした)本当に有難うございました。 このようなやり方があるんですね…。 今後もよろしくお願い致します。どうも有難うございました。