捕获文本输入

Flash Player 9 和更高版本,Adobe AIR 1.0 和更高版本

默认情况下,文本字段的 type 属性设置为 dynamic。如果使用 TextFieldType 类将 type 属性设置为 input,则可以收集用户输入并保存该值以便在应用程序的其他部分使用。对于表单以及希望用户定义可用于程序中其他位置的文本值的任何应用程序而言,输入文本字段都十分有用。

例如,以下代码会创建一个名为 myTextBox 的输入文本字段。当用户在字段中输入文本时,会触发 textInput 事件。名为 textInputCapture 的事件处理函数会捕获输入的文本字符串,并将其赋予一个变量。Flash Player 或 AIR 会在另一个名为 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; 
        } 
         
    } 
}