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如下:
程序代码
在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如下:
![程序代码](http://www.kingnare.com/auzn/images/code.gif)
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 ;
}
}
}
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 ;
}
}
}
本文转自94cool博客园博客,原文链接:http://www.cnblogs.com/94cool/archive/2009/05/21/1486626.html,如需转载请自行联系原作者