iptton 发表于 2006-9-26 01:28

[AS]一个小东西

DigitalChar.as

class DigitalChar
{
        private var txt:Array;
        private var len:Number;
        private var textContainer:TextField;
        private var tm;
        public function DigitalChar(tf:TextField)
        {
                //trace("Contructing...");
                textContainer=tf;
                init();
        }
        public function init()
        {
                //trace("initaling...");
                len=new Number(0);
                txt=new Array();
                for(var i=48;i<58;i++)
                {//0-9
                        //trace(String.fromCharCode(i));
                        txt.push(String.fromCharCode(i));
                        len++;
                }
                for(var i=64;i<91;i++)
                {//@A-Z
                        txt.push(String.fromCharCode(i));
                        len++;
                }
                for(var i=97;i<123;i++)
                {//a-z
                        txt.push(String.fromCharCode(i));
                        len++;
                }
                tm=setInterval(this,"changeText",500);
        }
        private function changeText()
        {
                //trace("interval running...");
                textContainer.text=this.txt;
                textContainer.textColor=Math.floor(Math.random()*0x0000ff+0xffffff);
        }
        public function changeChar(a:Array)
        {
                len=a.length;
                for(var p in a)
                        txt=a;
        }
        public function setTimeInter(t:Number)
        {
                clearInterval(tm);
                tm=setInterval(this,"changeText",t);
        }
}







DigitalWorld.as

class DigitalWorld
{
        private var dcArr:Array;
        private var textw:Number;
        private var texth:Number;
        private var pMC:MovieClip;
        private var w:Number;
        private var h:Number;
        public function DigitalWorld(parentMC:MovieClip, thew:Number, theh:Number)
        {
                w=thew;
                h=theh;
                pMC=parentMC;
                init();
        }
        private function init()
        {
                textw=texth=20;
                dcArr=new Array();
                var dep=0;
                for (var j = 0; j<w; j++) {
                        var tmp = textw*j;
                        for (var i = 0; i<h; i++) {
                                pMC.createTextField("txt"+dep, dep, tmp, i*texth, textw, texth);
                                //this["txt"+i].text
                                dcArr.push(new DigitalChar(pMC["txt"+dep]));
                                dcArr.setTimeInter(Math.floor(Math.random()*40+100));
                        }
                }
        }
}



testDigitalWorld.fla
第一帧AS:

_root.createEmptyMovieClip("digital",1);
digital._x=100;
digital._y=100;
var p:DigitalWorld=new DigitalWorld(digital,20,20);


[ 本帖最后由 iptton 于 2006-9-26 01:31 编辑 ]

powerwind 发表于 2006-9-26 01:33

好像是数字字符的转换,显示还会闪的样子.
看不懂的路过.

iptton 发表于 2006-9-26 01:39

源代码等下载:
http://www.flashbao.com/bbs/viewFile.asp?BoardID=25&ID=619

iptton 发表于 2006-9-26 01:40

晚了,暂时不写注释了
其实很简单,不写注释应该也可以看明白

iptton 发表于 2006-9-26 01:56

仿黑客帝国那个数字场景。。。。
PPT竟然看得出来。。。

找不到上传SWF的空间,具体效果下载来看吧。。

powerwind 发表于 2006-9-26 12:32

原帖由 iptton 于 2006-9-26 01:56 发表
仿黑客帝国那个数字场景。。。。
PPT竟然看得出来。。。

找不到上传SWF的空间,具体效果下载来看吧。。

竟然用竟然这个词

和JS同一家族的东西嘛!

黯然销魂 发表于 2006-9-27 13:09

仿黑客帝国那个效果我2年前做过....哦不是....3年前...

http://www.flashempire.net/showthread.php?t=223303

iptton 发表于 2006-9-27 13:51

呵呵,这个很多人做过的啦。。。

这是本周的一个练习

iptton 发表于 2006-9-27 13:53

不过我做的有点不同于那个场景。。。
而且是写成类,方便重用

不过怎么说,都是一个非常简单的东西

iptton 发表于 2006-9-27 21:38

http://www.jonet.com.cn/attachment.php?aid=37

[ 本帖最后由 iptton 于 2007-3-13 17:14 编辑 ]
页: [1]
查看完整版本: [AS]一个小东西