首页 > 代码库 > ssc

ssc

接了一个ssc的小项目,却因为对方的不作答而半途而废。我写了一天的代码算是废了。

主程序

<?xml version="1.0" encoding="utf-8"?><mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()"    width="600" height="950" xmlns:cc="*">    <mx:Script>        <![CDATA[            import com.adobe.serialization.json.JSON;            import mx.controls.Alert;            import mx.formatters.DateFormatter;                                    [Bindable]            public var t1:int;            [Bindable]            public var t2:int;            [Bindable]            public var t3:int;            [Bindable]            public var t4:int;                        [Bindable]            public var now:Date;                        [Bindable]            public var balls:Array = [];                        public static var  INTERVAL:int = 10*60;                        public static var  BALL_COUNT:int = 11;                        public var count:int;                                    public function init():void {                                now = new Date();                var timer:Timer = new Timer(1000);                timer.addEventListener(TimerEvent.TIMER, onTimer);                timer.start();                                var ss:String = JSON.encode(null);                //getBalls();                                var obj:Object = {};                obj.a = 123;                obj.b = "asdf";                Alert.show(obj+"");                var xx:XML = <asfasf/>                xx.appendChild(obj);                Alert.show(xx.toXMLString());                            }                        public function getBalls():void {                var center:Point = new Point(ballbox.width/2, ballbox.height/2-50);                var radis:Number = ballbox.width/2 - 120;                    trace(radis + " / " + ballbox.width/2);                for(var i:int=1;i<=BALL_COUNT;i++) {                    balls[i] = (int)(Math.random()*100);                    trace(balls[i]);                                        var btn:Button = new Button();                    btn.width = 30;                    btn.height = 30;                    btn.setStyle("cornerRadius", 30);                    btn.label = balls[i]+"";                    btn.x = radis*Math.sin(360*i/(BALL_COUNT-1)) + center.x;                    btn.y = radis*Math.cos(360*i/(BALL_COUNT-1)) + center.y;                    ballbox.addChild(btn);                                        trace("" + btn.x + " / "  + btn.y);                }                                            }                        public function onTimer(e:TimerEvent):void {                count ++;                if(count == INTERVAL) {                    count = 0;                    t1 = 1;                    t2 = 0;                    t1 = 0;                    t2 = 0;                    // lottery                    Alert.show("开奖了!");                }                var left:int = INTERVAL - count;                var minutes:int = left/60;                var seconds:int = left%60;                if(minutes>=10) {                    t1 = 1;                    t2 = 0;                } else {                    t1 = 0;                    t2 = minutes;                }                if(seconds>=10) {                    t3 = seconds/10;                    t4 = seconds%10;                } else {                    t3 = 0;                    t4 = seconds;                }                            }                                            ]]>    </mx:Script>    <mx:Panel title="欢迎光临本店" width="100%" height="100%">    <mx:Button color="red" label="233234"/>        <mx:HBox horizontalAlign="right" width="100%">            <mx:Text text="距离本期销售截止,还有"/>            <mx:Button id="n1" label="{t1}" fontSize="20" fontWeight="bold"/>            <mx:Button id="n2" label="{t2}" fontSize="20" fontWeight="bold"/>            <mx:Text text=""/>            <mx:Button id="n3" label="{t3}" fontSize="20" fontWeight="bold"/>            <mx:Button id="n4" label="{t4}" fontSize="20" fontWeight="bold"/>            <mx:Text text=""/>        </mx:HBox>                <mx:Canvas id="ballbox" height="100%" width="100%">        </mx:Canvas>            </mx:Panel>        <mx:HBox x="100" y="100" horizontalGap="2">            <cc:RollableBall2 cW="80" cH="50"/>            <cc:RollableBall2 cW="80" cH="50"/>            <cc:RollableBall2 cW="80" cH="50"/>            <cc:RollableBall2 cW="80" cH="50"/>            <cc:RollableBall2 cW="80" cH="50"/>        </mx:HBox>                <mx:HBox x="100" y="300" horizontalGap="2">            <cc:RollableBall3 cW="80" cH="50"/>            <cc:RollableBall3 cW="80" cH="50"/>            <cc:RollableBall3 cW="80" cH="50"/>            <cc:RollableBall3 cW="80" cH="50"/>            <cc:RollableBall3 cW="80" cH="50"/>        </mx:HBox></mx:Application>
View Code

按钮控件

<?xml version="1.0" encoding="utf-8"?><mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" width="{this.cW}" height="{this.cH}" creationComplete="init()"     horizontalScrollPolicy="off" verticalScrollPolicy="off" fontSize="{this.cW/3}" fontWeight="bold" fontThickness="{this.cW/20}"    borderThickness="2" borderColor="blue" borderStyle="outset">    <mx:Script>        <![CDATA[            import flash.utils.setTimeout;            import mx.controls.Button;                        public var TOTAL_INTERVAL:int = 5*1000;                        public var  interval:int = 5;                        public static var  ROLL_COUNT:int = 100;                        public var count:int = 0;                        public var ecliipsedTime:int = 0;                        public var y1:int = 0;            public var y2:int = -100;                        public var btn1:Button = new Button();            public var btn2:Button = new Button();                        [Bindable]            public var cW:int;            [Bindable]            public var cH:int;                                    public function init():void {                btn1.label = (int)(Math.random()*10);                btn1.width = cW;                btn1.height = cH;                //btn1.setStyle("fontSize", 20);                btn2.label = (int)(Math.random()*10);                btn2.width = cW;                btn2.height = cH;                btn2.y = -cH;                //btn2.setStyle("fontSize", 20);                this.addChild(btn1);                this.addChild(btn2);                start();            }                                    public function start():void {                var delay:int = (int)(Math.random()*1000);                var t:Timer = new Timer(delay, 1);                t.addEventListener(TimerEvent.TIMER, doStart);                t.start();            }                        public function doStart(e:TimerEvent):void {                                goTimer();            }                        public function goTimer():void {                                flash.utils.setTimeout(function():void{                    //Alert.show("sleep test ok");                    onTimer();                },interval,null);            }                                    public function newBtn():Button {                return null;            }                        // 开始滚动的时候要慢, 快要停止id时候也要慢!            public function onTimer():void {                ecliipsedTime +=  interval;                count ++;                                if(count>=ROLL_COUNT*9/10) {                    interval += Math.random()*100;                }                //                if(count>=ROLL_COUNT*9/10) {//                    interval += 100;//                }//                if(count>=ROLL_COUNT*29/30) {//                    interval += 200;//                }//                if(count>=ROLL_COUNT*49/50) {//                    interval += 500;//                }                //                if(TOTAL_INTERVAL-ecliipsedTime<=1) {//                    interval += 20;//                }                                if(count>ROLL_COUNT) {                    return;                }                                y1 += 10;                if(y1>=cH) {                    y1 = -100;                    btn1.label = (int)(Math.random()*10);                }                btn1.y = y1;                                 y2 += 10;                if(y2>=cH) {                    y2 = -100;                    btn2.label = (int)(Math.random()*10);                }                btn2.y = y2;                                goTimer();            }                    ]]>    </mx:Script></mx:Canvas>
View Code

按钮控件

<?xml version="1.0" encoding="utf-8"?><mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" width="{this.cW}" height="{this.cH*3}" creationComplete="init()"     horizontalScrollPolicy="off" verticalScrollPolicy="off" fontSize="{this.cW/3}" fontWeight="normal" fontThickness="{this.cW/20}"    borderThickness="2" borderColor="blue" borderStyle="outset">    <mx:Script>        <![CDATA[            import flash.utils.setTimeout;            import mx.controls.Button;                        public var TOTAL_INTERVAL:int = 5*1000;                        public var  interval:int = 5;                        public static var  ROLL_COUNT:int = 100;                        public var count:int = 0;                        public var ecliipsedTime:int = 0;                        public var y1:int;            public var y2:int;            public var y3:int;            public var y4:int;                        public var btn1:Button = new Button();            public var btn2:Button = new Button();            public var btn3:Button = new Button();            public var btn4:Button = new Button();                        [Bindable]            public var cW:int;// button 宽度            [Bindable]            public var cH:int;// button 高度                                    public function init():void {                                y1 = 0;                y2 = cH*1;                y3 = cH*2;                y4 = -cH;                            btn1.label = (int)(Math.random()*10);                btn1.width = cW;                btn1.height = cH;                btn1.y = y1;                //btn1.setStyle("fontSize", 20);                this.addChild(btn1);                btn2.label = (int)(Math.random()*10);                btn2.width = cW;                btn2.height = cH;                btn2.y = y2;                this.addChild(btn2);                btn3.label = (int)(Math.random()*10);                btn3.width = cW;                btn3.height = cH;                btn3.y = y3;                this.addChild(btn3);                btn4.label = (int)(Math.random()*10);                btn4.width = cW;                btn4.height = cH;                btn4.y = y4;                this.addChild(btn4);                                    start();            }                                    public function start():void {                var delay:int = (int)(Math.random()*2000);                var t:Timer = new Timer(delay, 1);                t.addEventListener(TimerEvent.TIMER, doStart);                t.start();            }                        public function doStart(e:TimerEvent):void {                                goTimer();            }                        public function goTimer():void {                                flash.utils.setTimeout(function():void{                    //Alert.show("sleep test ok");                    onTimer();                },interval,null);            }                                    public function newBtn():Button {                return null;            }                        public function onTimer():void {                ecliipsedTime +=  interval;                count ++;                //                if(count>=ROLL_COUNT*9/10) {//                    interval += Math.random()*100;//                }                //                if(count>=ROLL_COUNT*9/10) {//                    interval += 100;//                }//                if(count>=ROLL_COUNT*29/30) {//                    interval += 200;//                }//                if(count>=ROLL_COUNT*49/50) {//                    interval += 500;//                }                //                if(TOTAL_INTERVAL-ecliipsedTime<=1) {//                    interval += 20;//                }                                if(count>ROLL_COUNT) {                    btn2.setStyle("fontWight", "bold");                    btn2.setStyle("fontSize", this.cW/2);                    btn2.setStyle("color", "red");                    btn2.setStyle("fontThickness", this.cW/10);                                        btn2.invalidateProperties();                    btn2.invalidateSize();                    btn2.invalidateDisplayList();                    return;                }                                y1 += 10;                if(y1>=cH*3) {                    y1 = -cH;                    btn1.label = (int)(Math.random()*10);                }                btn1.y = y1;                                 y2 += 10;                if(y2>=cH*3) {                    y2 = -cH;                    btn2.label = (int)(Math.random()*10);                }                btn2.y = y2;                                 y3 += 10;                if(y3>=cH*3) {                    y3 = -cH;                    btn3.label = (int)(Math.random()*10);                }                btn3.y = y3;                                 y4 += 10;                if(y4>=cH*3) {                    y4 = -cH;                    btn4.label = (int)(Math.random()*10);                }                btn4.y = y4;                                                 goTimer();            }                    ]]>    </mx:Script></mx:Canvas>
View Code