2012-01-01 8 views
0

現在、結果のXML(xmlResult)をステージ上にあるテキストボックスに追加しようとしています。私はMovieClip(ルート)を使ってみました。[instancename] .text = .....しかし、それは動作しませんでした - ヌルオブジェクトリファレンス?助言がありますか?ありがとう!カスタムクラス内のステージステージオブジェクト(テキストボックス)

package { 

public class ChatHistory extends MovieClip { 

    public function ChatHistory() 
    { 
     //constructor 
    } 
    public function getChatText() { 
      var loader:URLLoader = new URLLoader(); 
      loader.addEventListener(Event.COMPLETE, requestComplete); 
      var requestURL:URLRequest = new URLRequest("http://localhost:80/chathistory.xml"); 
      requestURL.method = URLRequestMethod.GET; 
      loader.load(requestURL); 
    } 

    private function requestComplete(event:Event):void { 
     try { 
     var xmlResult:XML = new XML(event.target.data); 
     trace(xmlResult); 
     } catch (e:TypeError) { 
      trace(e.message); 
     } 
    } 
} 
}  
+0

あなたが試したものの一例を'MovieClip(root)。[" instancename "]。text' – Kapep

+0

私は単純に[instancename]をプレースホルダとして使用していました - 使用したコードでは:MovieClip (ro ot).textBox.text = ... – Jonathan

+0

さて、私は余分なドットに気付かなかったので、それは配列アクセス演算子であると仮定しました。ムービークリップの 'stage'プロパティを試してみることもできますが、多くの場合、間違った名前を使用するか、ステージの子のみの場合はステージのプロパティのようにオブジェクトにアクセスしようとすると問題が発生します。 – Kapep

答えて

0

おそらくこれがあなたを啓発することができ、私はこれを試してみました、それが働いた:

import flash.text.TextField; 
import ik_fla.MainTimeline; 

TextField(MainTimeline(stage.getChildAt(0)).getChildByName('myTxt')).text = "weeee"; 

またはあなたの代わりにObjectキャストを使用してimportsを避けることができた:

Object(Object(stage.getChildAt(0)).getChildByName('myTxt')).text = "weeee"; 
+0

おそらくここで少し厚いですが、これに必要な輸入品は何ですか? – Jonathan

+0

最後の投稿でインポートステートメントを更新します。 – Fabricio

+0

ありがとう!働いているようだ! – Jonathan

関連する問題