テキスト入力のキャプチャ

Flash Player 9 以降、Adobe AIR 1.0 以降

デフォルトでは、テキストフィールドの type プロパティは dynamic に設定されます。TextFieldType クラスを使用して type プロパティを input に設定すると、アプリケーションの他の部分で使用するために、ユーザー入力を収集し、値を保存することができます。入力テキストフィールドは、フォームで使用するのに便利です。また、テキスト値をユーザーに定義させてその値をプログラムの他の部分で使用するアプリケーションでも役に立ちます。

例えば、次のコードは、 myTextBox という名前の入力テキストフィールドを作成します。ユーザーがフィールドにテキストを入力すると、 textInput イベントがトリガーされます。 textInputCapture という名前のイベントハンドラーが、入力されたテキストのストリングをキャプチャして、変数を割り当てます。Flash Player は、 myOutputBox という名前の別のテキストフィールドにその新しいテキストを表示します。

package 
{ 
    import flash.display.Sprite; 
    import flash.display.Stage; 
    import flash.text.*; 
    import flash.events.*; 
 
    public class CaptureUserInput extends Sprite 
    { 
        private var myTextBox:TextField = new TextField(); 
        private var myOutputBox:TextField = new TextField(); 
        private var myText:String = "Type your text here."; 
 
        public function CaptureUserInput() 
        { 
            captureText(); 
        } 
         
        public function captureText():void 
        { 
            myTextBox.type = TextFieldType.INPUT; 
            myTextBox.background = true; 
            addChild(myTextBox); 
            myTextBox.text = myText; 
            myTextBox.addEventListener(TextEvent.TEXT_INPUT, textInputCapture); 
        } 
         
        public function textInputCapture(event:TextEvent):void 
        { 
            var str:String = myTextBox.text; 
            createOutputBox(str); 
        } 
             
        public function createOutputBox(str:String):void 
        { 
            myOutputBox.background = true; 
            myOutputBox.x = 200; 
            addChild(myOutputBox); 
            myOutputBox.text = str; 
        } 
         
    } 
}