forked from: TextFieldのChangeイベントはユーザー入力の時だけ起こるらしい

by ultranoir forked from TextFieldのChangeイベントはユーザー入力の時だけ起こるらしい (diff: 1)
♥0 | Line 40 | Modified 2010-08-03 13:24:42 | MIT License
play

ActionScript3 source code

/**
 * Copyright ultranoir ( http://wonderfl.net/user/ultranoir )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/1fJ5
 */

// forked from esukei's TextFieldのChangeイベントはユーザー入力の時だけ起こるらしい
package {
    import flash.display.Sprite;
    import flash.text.TextField;
    import flash.text.TextFieldType;
    import flash.events.Event;
    import flash.events.TimerEvent;
    import flash.utils.Timer;
    public class TextFieldChangeTest extends Sprite {
        
        private var logger:TextField;
        private var textField:TextField;
        private var timer:Timer;
        
        public function TextFieldChangeTest() {
            
            timer = new Timer(2000);
            
            logger = new TextField();
            
            logger.width = 300;
            logger.height = 150;
            logger.y = 300;
            logger.border = true;
            logger.text = '----log----\n';
            
            addChild(logger);
            
            textField = new TextField();
            
            textField.width = 300;
            textField.height = 200;
            textField.border = true;
            textField.borderColor = 0x999999;
            
            textField.type = TextFieldType.INPUT;
            
            textField.text = 'ここが変更されたらイベント起こるよ!\nASから変更したときは何も起きないっぽいよ!\n\n';
            
            addChild(textField);
            
            //イベント起きたらここにイベントの文字列が出るよ
            textField.addEventListener(Event.CHANGE, function(event:Event):void
            {
                logger.appendText(event.toString() + '\n');
            });
            
            timer.addEventListener(TimerEvent.TIMER, function(event:TimerEvent):void
            {
                textField.appendText('ASで変更!' + '\n');
            });
            
            timer.start();
        }
    }
}