当前位置: > > > AS3 - 生成随机的验证码(包含数字和字母)

AS3 - 生成随机的验证码(包含数字和字母)

Flex/Flash开发中,有时会需要程序自动生成个随机的验证码,可以包含字母或数字。下面提供一个样例,先看效果图:


代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
               xmlns:s="library://ns.adobe.com/flex/spark"
               xmlns:mx="library://ns.adobe.com/flex/mx"
               creationComplete="init(event)">
    <fx:Script>
        <![CDATA[
            import mx.events.FlexEvent;
            protected function init(event:FlexEvent):void
            {
                checkCode.text=GenerateCheckCode();
            }
             
            //生成随机码
            private function GenerateCheckCode():String
            {
                //初始化
                var ran:Number;
                var number:Number;
                var  code:String;
                var checkCode:String ="";
                //生成四位随机数
                for(var i:int=0; i<4; i++)
                {
                    //Math.random生成数为类似为0.1234
                    ran=Math.random();
                    number =Math.round(ran*10000);
                    //如果是2的倍数生成一个数字
                    if(number % 2 == 0)
                        //"0"的ASCII码是48 
                        code = String.fromCharCode(48+(number % 10));
                        //生成一个字母
                    else 
                        //"A"的ASCII码为65
                        code = String.fromCharCode(65+(number % 26)) ;
                    checkCode += code;
                }
                return checkCode;
            }
        ]]>
    </fx:Script>
    <s:Label x="10" y="10" id="checkCode" color="#377CD0" click="checkCode.text=GenerateCheckCode();" />
</s:Application>
评论0