About

<#TEMPLATE_INCLUDE_NINEPAGE_ABOUTME#>
  • Jun

    2

    Mar

    26

    ● corner0x & corner0y : 左底
    ● corner1x & corner1y : 右底
    ● corner2x & corner2y : 顶右
    ● corner3x & corner3y : 顶左

    Mar

    26

    AS2 版本的 Base64,文件下载地址:as2Base64.rar

    Jan

    14

    正则表达式入门教程

    • 0 Comments
    • Flash Platform

    ActionScript3 中 RegExp类允许使用正则表达式,并且为顶级类。在 ActionScript2 中没有内置的正则表达式类,可以使用第三方类来实现

    下载 ActionScript2 版本的第三方类:AS2_RegExp.rar

    正则表达式相关入门教程:http://deerchao.net/tutorials/regex/regex.htm

    Dec

    8

    Flash无论是ActionScript2或3编程,它的刷新渲染方式都是基于帧的渲染,很多闪客ASer都认为这是导致Flash编程执行效率低下的主要原因。但本人也在这里提出一种看法,即:很多Flash的BUG也是基于这种帧刷新的方法产生的(个人认为 Flash ActionScript2/3 是一种“邪恶”的编程语言)。 

    Stage.scaleMode = "noScale";
    Stage.align = "TL";
    //生成红色按扭用于切换全屏与窗口
    var square_mc:MovieClip = createEmptyMovieClip("square_mc", getNextHighestDepth());
    square_mc.beginFill(0xFF0000);
    square_mc.moveTo(10,10);
    square_mc.lineTo(100,10);
    square_mc.lineTo(100,100);
    square_mc.lineTo(10,100);
    square_mc.lineTo(10,10);
    square_mc.endFill();
    square_mc.onRelease = function() {
     Stage.displayState = (Stage.displayState == "normal" ? "fullScreen" : "normal");
    };
    //注销以下这一段将在FLASH的一些新版本中产生BUG
    /*var myListener:Object = new Object();
    myListener.onResize = function() {
     Stage.align = "TL";
     onEnterFrame = function () {
      Stage.align = "TL";
      if (Stage.align == "TL") {
       delete onEnterFrame;
      }
     };
    };
    Stage.addListener(myListener);*/

    //TXT用于显示舞台宽度
    var txt:TextField = createTextField("txt", getNextHighestDepth(), 100, 100, 100, 100);
    //实时检测舞台大小
    square_mc.onEnterFrame = function() {
     txt.text = String(Stage.width);
    };

    这样的BUG是否“邪恶”?解决像这类BUG的方法,就是使用延迟并重置属性,如使用setTimeout 或 onEnterFrame等。还有一些像AS3的主类为外部文件类时,在初始化时也会产生类似的BUG,可以通过这种延迟方法解决。像 setSelectColor 方法也许并不常用,但 TextSnapshot 类在正常使用的情况下,唯有这个类中的 setSelectColor 方法经常不能正常使用,也可以通过延迟的方法来解决。

    注:1、AS2 中使onEnterFrame 后需要 delete 将它删除。AS3中使用Event.ENTER_FRAME事件后需要使用相应的 addEventListener 取消侦听器。2、Flex中的一些框架组件有时候用Event.ENTER_FRAME的延迟并不一定能修正这个BUG,这时候可以试试setTimeout ,哪怕它的时间延迟设定的是0.001秒。这说明有些BUG的修正方法并不决定于开发人员使用的推迟时间长短,而是决定于使用的方法。

    Nov

    20

    本地共享存储 SharedObject 类默认路径:

    WINDOWS XP

    C:\Documents and Settings\计算机用户名\Application Data\Macromedia\Flash Player\#SharedObjects\随机文件名\localhost

     WINDOWS 7 

    C:\Users\计算机用户名\AppData\Roaming\Macromedia\Flash Player\#SharedObjects\随机文件名\localhost

     小心它有一个“陷井”:与普通文件名不一样的是,SharedObject 类 getLocal() 方法中name参数除不能使用 ~ % & \ ; : " ' , < > ? # 这些字符外,它还不能使用“空格”字符;但它可以合法的包含正斜杠 (/)。

    Nov

    18

     //删除头尾指定字符
    private function trimChar(theString:String, char:String):String {
    while (theString.charAt(0) == char) {
    theString = theString.substring(1, theString.length);
    }
    while (theString.charAt(theString.length-1) == char) {
    theString = theString.substring(0, theString.length-1);
    }
    return theString;
    }

    Oct

    31

    ActionScript3 支持了E4X标准来处理XML数据,非常方便;但在ActionScript2 中只能使用DOM标准来处理XML数据(事实上ActionScript3 支持两种标准来处理XML数据,除了E4X之外,仍然支持传统的DOM标准来处理XML数据)。以下为XML数据解析方法的实例截图: