2011-12-29 9 views
0

からTextFieldを作成します。私が設定され、テキストを読むためのメソッドを持つTextFieldを作成したい出力クラス内AS3は、私は空のステージのためのドキュメントクラスを作成し、ドキュメントクラスにインポートされた出力クラスを作成したいクラス

A)空のステージ文書クラスと "トミー"

b)は文書クラス "トミー"

package { 
    import flash.display.MovieClip; 
    import cOutput; 

    public class tommy extends MovieClip { 
    var _loc_1:cOutput; 

    public function tommy() { 
     _loc_6 = new cOutput; 
     _loc_6.setOutput();//("hurra");  
    } 
    } 
} 

c)の出力クラスcOutput(の有無にかかわらずは、ムービークリップを拡張)

package { 
    //import flash.display.MovieClip; 
    import fl.controls.TextInput; 

    public class cOutput{ //extends MovieClip { 
    public var texteField:TextInput; 

    public function cOutput() { 
     texteField = new TextInput(); 
     addChild(texteField); 
     texteField.text = "Seriously... I need to be displayed." 
    } 
    public function setOutput(printValue:String){ 
     texteField.text = printValue; 
    } 
    } 
} 

「定義fl.controls:TextInputが見つかりませんでした」というメッセージが表示されます。

私はあなたが(私は古典的なテキスト、ステージ上の入力テキストとしてテキストフィールドをドラッグ)ライブラリでこれを持っている必要があることを読みました。 私はこれが機能していないようです。

私が間違っていることは何ですか?

答えて

1

ではなくTextInputクラスのTextFieldクラスを使用します。 TextFieldクラスは最も基本的なテキストコンポーネントである:サイドノートでhttp://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/text/TextField.html

cOutput表示オブジェクトではないとして、あなたのaddChild()呼び出しは、何もしません。

+0

感謝。私はTextInputを作ったが、うまくいかなかった。次に(TextInputのontop)Sprite(またはMovieClip)としてcOutputを追加しましたが、何も起こりませんでした。次に、tommyクラスにaddChild(_loc_6)を追加して、それを表示します。なぜ私はcOutputの中にスプライトを追加していますが、_loc_6をステージに追加する必要があるのか​​説明できますか? – Dinkheller

+0

'cOutput'を' _loc_6'に追加すると、それを子として追加するだけです。これは問題ありません。問題は、 '_loc_6'が' stage'(または 'tommy'クラス)に追加されなかったので、あなたはそれを見ませんでした。それは(あなたがこれを使用すると、表示階層を構築し、それが完了しています場合にのみ、それを表示することができることを意味しませんせるフラッシュ)を示していますことを、あなたは 'tommy'クラスに' _loc_6'クラスを追加する場合にのみです。 'tommy'クラスに' cOutput'クラスを直接追加して、必要に応じてすぐに表示することができます。 – divillysausages

関連する問題