Blog / 阅读

as3 flash参数获得(root.loaderInfo.parameters用法) (

by admin on 2014-05-27 11:16:58 in ,



as3 flash 参数获得(root.loaderInfo.parameters 用法)

用AS2时,可以直接把参数加在flash的尾部,如:demo.swf?u1=good&u2=bad
在flash里就默认u1,u2为根变量。可以使用_root.u1和_root.u2来得到值
但到了AS3里面这样做已经不行了。
要用到flash.display.loaderInfo类的parameters属性,返回的是一个参数对象
使用方法:
例如在文档类中定义var param:Object = root.loaderInfo.parameters;
如果取u1的值,可以用param["u1"],同样u2的值:param["u2"]


做了个小例子,document class如下:
 程序代码
package {
    
    import flash.display.Sprite;
    import flash.display.Stage;
    import flash.display.StageScaleMode;
    import flash.text.TextField;
    import flash.text.TextFieldAutoSize;
    
    public class LoaderInfoDemo extends Sprite {
        
        public function LoaderInfoDemo(){        
        
            stage.scaleMode = StageScaleMode.NO_SCALE;
            
            var out_txt:TextField = createText();
            out_txt.border = true;
            out_txt.borderColor = 0xFF6600;
            out_txt.y = 20;
            addChild(out_txt);
            
            var info_txt:TextField = createText();
            info_txt.text = "修改loaderInfoDemo.swf?msg=xxx中的xxx值,然后回车";
            info_txt.autoSize = TextFieldAutoSize.LEFT;
            addChild(info_txt);
            
            var param:Object = root.loaderInfo.parameters;
            if(param["msg"]!=null){
                out_txt.text = param["msg"];
                trace("value:"+param["msg"]);
            }else{
                out_txt.text = "null";
                trace("value:null");
            }
        }
        
        private function createText():TextField{
            var tmp:TextField = new TextField();
            tmp.selectable = false;
            tmp.width = 100;
            tmp.height = 20;
            return tmp;
        }
    }
}


写评论

相关文章

上一篇:FLASH AS:如何运用Flashvars传参

下一篇:php中对二维数组某个元素进行排序方法

评论

写评论

* 必填.

分享

栏目

赞助商


热门文章

Tag 云