forked from: flash on 2010-12-9

by uwi forked from flash on 2010-12-9 (diff: 13)
♥0 | Line 51 | Modified 2010-12-09 04:31:26 | MIT License
play

ActionScript3 source code

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

// forked from yooKo's flash on 2010-12-9
package {
    import flash.display.*;
    import flash.text.*;
    import flash.events.Event;
    public class FlashTest extends MovieClip {
        private var cx:Number = 200;
        private var w:Number = 40;
        private var m:Number = 10;
        private var l:int = 30; // <-------ここが30以上だとおかしい
        //private var i:int = 0;
        private var list:Array = [];        
        
        public function FlashTest() {
           for(var i:int = 0; i < l; i++) {
                var o:MovieClip = new MovieClip();
                o.graphics.beginFill(0x00FF00);
                o.graphics.drawRect(0, 0, w, w);
                o.graphics.endFill();
                o.tf = new TextField();
                o.addChild(o.tf);
                addChild(o);
                o.cacheAsBitmap = true;
                o.tf.text = i;
                o.id = i;
                o.x = i *(w + m) + cx;
                o.y = 100;
                list.push(o);
            }
            list.sortOn(["x"]); // <-------毎回sortOnがだめなのか、、
            _tf = new TextField();
            addChild(_tf);
            _tf.height = 465;

            addEventListener(Event.ENTER_FRAME, update);
        }
        
        private var _tf : TextField;
        
        private function update(e:Event):void {
            var tx:Number;
            for(var i:int = 0; i < l; i++) {
                var o:MovieClip = list[i];
                tx = o.x;
                tx -= 1;
                if(tx < 100) tx = list[l-1].x + m + w; // <------ここを if(tx < 50) にしてもおかしい、、
                o.tf.text = i;
                o.x = tx;
            }
            list.sortOn(["x"], Array.NUMERIC); // <-------毎回sortOnがだめなのか、、
            
            _tf.text = "";
            for(i = 0;i < l;i++){
                _tf.appendText(list[i].x + "\n");
            }
        }            
    }
}