Digital_Clock2

by sk310
auの携帯「SA002」の待受画面を作ってみたくてやってみた。
♥0 | Line 115 | Modified 2011-10-28 14:23:45 | MIT License
play

ActionScript3 source code

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

package {
    import flash.text.TextFormat;
    import flash.events.Event;
    import flash.text.TextField;
    import flash.display.Sprite;
    
    [SWF(backgroundColor = 0x000000, width = 320, height = 360, frameRate = 60)]

    public class FlashTest extends Sprite {
        
        private var tfm:TextFormat   = new TextFormat();       
        private var monTf:TextField  = new TextField();    //月
        private var dateTf:TextField = new TextField();    //日、曜日
        private var timeTf:TextField = new TextField();    //時間
        private var secTf:TextField  = new TextField();    //現在の秒
        private var befTf:TextField  = new TextField();    //一秒前
        private var aftTf:TextField  = new TextField();    //一秒後
                
        public function FlashTest() {
     
            var week:Array = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
            var month:Array = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
            
            tfm.size = 20;
//            tfm.color = 0xFFFFFF;
            monTf.defaultTextFormat = tfm;
            monTf.x = 30;
            monTf.y = 140;
            addChild(monTf);
            
            dateTf.defaultTextFormat = tfm;
            dateTf.x = 30;
            dateTf.y = 160;
            addChild(dateTf);
            
            tfm.size = 30;
            timeTf.defaultTextFormat = tfm;
            timeTf.x = 30;
            timeTf.y = 180;
            addChild(timeTf);
            
            tfm.size = 100;
            secTf.defaultTextFormat = tfm;
            secTf.x = 150;
            secTf.y = 120;
            addChild(secTf);
            
            tfm.color = 0x333333;
            befTf.defaultTextFormat = tfm;
            befTf.x = 150;
            befTf.y = 20;
            addChild(befTf);

            aftTf.defaultTextFormat = tfm;
            aftTf.x = 150;
            aftTf.y = 220;
            addChild(aftTf);

            function now(e:Event):void
            {
                var now:Date = new Date();
                
                //月
                var mon:Number = now.month;
                monTf.text = month[mon];

                //日、曜日
                var dd:String = now.date.toString();
                if (Number(dd) < 10)
                {
                    dd = "0" + dd;
                }
                
                if (now.date == 1 || now.date == 21 || now.date == 31)
                {
                    dd = dd + "st";
                }
                else if (now.date == 2 || now.date == 22)
                {
                    dd = dd + "nd";
                }
                else if (now.date == 3 || now.date == 23)
                {
                    dd = dd + "rd";
                }
                else
                {
                    dd = dd + "th";
                }
                
                var youbi:Number = now.day;
                dateTf.text = dd + " " + week[youbi] + ".";
                
                //時間
                var hh:String = now.hours.toString();
                if (Number(hh) < 10)
                {
                    hh = "0" + hh;
                }
                
                var mi:String = now.minutes.toString();
                if (Number(mi) < 10)
                {
                    mi = "0" + mi;
                }
                
                timeTf.text = hh + ":" + mi;

               //現在の秒
                var sec:String = now.seconds.toString();
                if (Number(sec) < 10)
                {
                    sec = "0" + sec;
                }

                secTf.text = sec;
                
                //一秒前
                var befsec:String = (now.seconds - 1).toString();
                if (Number(befsec) == -1)
                {
                    befsec = "59";
                }
                if (Number(befsec) < 10)
                {
                    befsec = "0" + befsec;
                }
                
                befTf.text = befsec;                
                
                //一秒後
                var aftsec:String = (now.seconds + 1).toString();
                if (Number(aftsec) == 60)
                {
                    aftsec = "0";
                }
                if (Number(aftsec) < 10)
                {
                    aftsec = "0" + aftsec;
                }
                
                aftTf.text = aftsec;
                
            }

            addEventListener(Event.ENTER_FRAME, now);



        }
    }
}