1

私はこれで迷っています。ドキュメント クラスがステージ上の単純なテキスト フィールドに初めてアクセスしようとすると、TypeError: Error #1009: Cannot access a property or method of a null object reference.出力メッセージが表示されます (アクション スクリプトではなく IDE から追加されます)。

package  {

import flash.display.*;
import fl.text.*;
import flash.text.*;
import flash.events.*;
import flash.net.*;

public class Main extends MovieClip {

    private var _netConnection:NetConnection;
    private var _responder:Responder;
    /* some other public + private vars */

    public function Main() {
        init();
    }

    public function init(e:*=null):void {
        _netConnection = new NetConnection();
        _responder = new Responder(uponResult);

        txt.text = "init()";
    }
    /* more functions */
  }
}

txt.addEventListener(Event.ENTER_FRAME, init);txt TLFTextField がなかった場合に備えて追加しようとしました...最初に...ありましたが、それでもエラーが出力されます。

私は少しばかげた atm のように感じます。予後はどうですか? JB

4

1 に答える 1

2

TLFTextFields は奇妙な生き物です。私は最近、それらに多くの問題を抱えていました。

Event.ADDED_TO_STAGE イベントを使用してみます。これは、TLFTextFields にアクセスしようとするときにステージ上にある必要があるためです。

public function Main() {
  addEventListener(Event.ADDED_TO_STAGE, init);
};
public function init(e:Event):void {
  removeEventListener(Event.ADDED_TO_STAGE, init);
  txt.text = "init()";
};

TLFTextField がメイン タイムラインの最初のフレームにある場合に機能するはずです。

これが魔法のようかどうか教えてください。

ロブ

于 2011-12-10T12:23:40.410 に答える