`

as3 备忘录(不断更新)

阅读更多

 

as3 备忘录

 

//网址链接,转向指定网址(注意:本地访问网址可能会弹出安全提示!):

 

var urlStr:String = "http://xwuxin.iteye.com";

var currUrl:URLRequest = new URLRequest(urlStr);

var openLoc:String = "_blank"; //网页打开位置

navigateToURL(currUrl,openLoc);

 

//as3读取xml文件

 

 

   var xml:XML;

   var xmlList:XMLList;

   var xmlLoader:URLLoader;

   var xmlSrc:String = "data/sys.xml";

   xmlLoader = new URLLoader();

   xmlLoader.load(new URLRequest(xmlSrc));

   xmlLoader.addEventListener(Event.COMPLETE, xmlLoaded);

   xmlLoader.addEventListener(IOErrorEvent.IO_ERROR,xmlError);

   xmlLoader.addEventListener(ProgressEvent.PROGRESS,xmlPro);

   //加载xml

   private function xmlLoaded(event:Event):void {

          xml = XML(event.target.data);

          xmlList = xml.children();//这个东东就是root结点下的一个列表对象,通过它去操作root结点下的东东(详细去查API)。

   }

   //加载出错处理


  private function xmlError(event:Event):void{


 }

  // 加载侦听。可用来获取加载时的一些信息。

 private function xmlPro(event:Event):void{

 }

 //在文本框中追加文本请使用高效率的appendText();如:nameTxt.appendText("append text test!");

 

 //as3检测操作系统

 

var os:String = System.capabilities.os.substr(0,3);
if(os == "Win"){
	//Windows-specific code goes here
}else if(os == "Max"){
	//Max-specific code goes here
}else {
	//Must be Unix or Linux
}

 

//as3检测播放器类型

var playerTypeStr:String = flash.system.Capabilities.playerType;

if(playerTypeStr == "Plugin"){

}else if(playerTypeStr == "ActiveX") {
	//do actions for IE
}else {
	//do actions for no browser
}

 

//as3检测系统语言

//Example output:en-US
trace(flash.system.Capabilities.language);
var greetings:Array = new Array();
greetings["en"] = "Hello";
greetings["es"] = "Hola";
greetings["fr"] = "Bonjour";
if(greeting[lang] == undefined){
	lang = "en";
}
trace(greetings[lang]);

 

//as3检测显示设置

//screenResolutionX和screenResolutionY属性返回桌面的显示分辨率:
trace(flash.system.Capabilities.screenResolutionX);
trace(flash.system.Capabilities.screenResolutionY);

 

//as3缩放影片

stage.scaleMode = StageScaleMode.SHOW_ALL;
stage.scaleMode = StageScaleMode.NO_BORDER;
stage.scaleMode = StageScaleMode.EXACT_FIT;
stage.scaleMode = StageScaleMode.NO_SCALE;

 

 //as3改变对齐方式,属性很多,其它请参考文档。

flash.display.StageAlign类的属性
stage.align = flash.display.StageAlign.TOP_RIGHT;

 


//隐藏flash播放器的菜单项
设置stage.showDefaultContextMenu属性

//下面的语句可以移除许多项目,Settings和About是不能移除的
stage.showDefaultContextMenu = false;

 

//检测设备音频
//flash.system.Capabilities类的hasAudio和hasMP3属性
hasAudio返回true表明可以播放音频。
hasMP3返回true表明可以播放MP3

 

//提示用户改变播放器设置
//打开用户的Flash播放器设置对话框窗口.
//使用flash.system.Security.showSettings()方法
//下面例子打开本地存储面板:
flash.system.Security.showSettings(SecurityPanel.LOCAL_STORAGE);

 

//千分位格式化数字

public static function formatno(n:String) {
			
			var Num:uint;
			if (n.indexOf(".") != -1) {
				Num = uint(n.substring(0, n.indexOf(".")));
			} else {
				Num = uint(n);
			}
			var arr = new Array('0'),
			i = 0;
			if (n.indexOf(",") == -1) {
				while (Num>0) {
					arr[i] = ''+Num%1000;
					Num = Math.floor(Num/1000);
					i++;
				}
				arr = arr.reverse();
				for (var i1 in arr) {
					if (i1>0) {
						while (arr[i1].length<3) {
							arr[i1] = '0'+arr[i1];
						}
					}
				}
			} else {
				trace("d");
				arr[i] = Num;
			}
			var Dec:String;
			if (n.indexOf(".") != -1) {
				Dec = n.substring(n.indexOf("."));
			} else {
				Dec = "";
			}
			if (Dec.length == 0 || Number(Dec) == 0) {
				arr += ".00";
			} else if (Dec.length == 2) {
				arr += Dec+"0";
			} else {
				arr += Dec;
			}
			//delete Num, Dec, i;
			return arr;
}

 

舞台上元件得到不到的原因:

 

在flash cs3中(cs4适用),当主时间轴(stage)上有影片剪辑的实例,且该影片剪辑有实例名称,并且关闭了“自动声明舞台上的实例”功能时(文件 ->发布设置->flash->ActionScript 3.0设置),你需要在文档类中手动声明与实例名称相同的属性,否则会报错。

 

在文档类以外的其他类中访问舞台对象 解决方法:
1:侦听,该类的实例被加到舞台以后,才访问该实例的stage属性。
2:创建实例的时候,把场景当参数传入这个类中。
3:创建一个顶级的继承MovieClipt的类,里面一个静态属性,存放stage的引用。其他的类(包括文档类)继承这个类,那在哪都能访问了。

分享到:
评论

相关推荐

    论公允价值计量趋同———以 IASB与 FASB为例 (2010年)

    2006年2月,双方进一步发布了备忘录,将“公允价值计量”项目纳入趋同计划。这一系列合作行动反映了两个机构在解决公允价值计量问题上的共同努力。特别是2009年5月28日IASB发布的《公允价值计量(征求意见稿)》,更...

    外企常用英文,再没有比这更全的了.doc

    27. **Memo**:备忘录,记录重要信息或通知的简短文件,通常用于内部沟通。 掌握这些词汇和表达能帮助你在外企中更有效地沟通,提高工作效率,并更好地融入企业文化。不断学习和实践,你会发现自己的英语水平和专业...

    销售人员的自我管理.doc

    早期的时间管理方法主要包括备忘录和日程表,但随着市场竞争的加剧,现代时间管理理论更强调自我管理,即明确个人价值观、设定目标并优先排序,以实现重要性而非急迫性为导向的高效工作。5As时间管理模型提供了一个...

    英语二小作文结构及常用句型.doc

    小作文通常涉及多种类型,如感谢信、祝贺信、道歉信、邀请信、倡导信、投诉信、询问信、请求信、婉拒信、求职信、推荐信以及公告和备忘录等。掌握每种信件的基本格式和常用句型,是提高小作文得分的关键。 小作文的...

    oracle存储过程学习经典语法+实例+调用.doc

    Oracle存储过程是数据库管理系统Oracle中的一个重要特性,它允许开发者编写一系列的SQL语句和PL/SQL块,以完成特定的任务。这些预编译的代码集合...通过不断的实践和学习,可以更加灵活地运用存储过程解决复杂问题。

    oracle存储超详细速成学习资料(语法+实例+调用)

    3. **Oracle 存储过程的若干问题备忘** - 数据表别名不能使用`AS`关键字,应该直接写为`table_name alias_name`。 - 在存储过程中,`SELECT`后的字段必须跟`INTO`指定变量,除非使用游标处理整行记录。 - `SELECT...

    oracle存储过程学习经典[语法+实例+调用].docx

    3. **关于Oracle存储过程的若干问题备忘** - 数据表别名在Oracle中不使用`as`关键字,如:`SELECT * FROM table t;` - 在存储过程中,`SELECT`语句后跟`INTO`用于将查询结果存入变量,没有记录则会抛出`NO_DATA_...

    中国联通餐饮行业信息化服务与订餐宝产品介绍.pptx

    餐饮企业的生命周期通常只有3-5年,这使得企业需要不断创新和提升服务质量以求生存和发展。从业人员众多,且多为流动人口,教育程度相对较低,这为餐饮企业的管理和运营带来了挑战。 目前,餐饮行业的信息化应用并...

    oracle 語法命令備忘

    这篇“Oracle语法命令备忘”将深入探讨Oracle SQL的一些核心概念和常用命令,帮助你更好地理解和操作Oracle数据库。 1. 数据库连接与登录: 使用SQL*Plus,你可以通过输入`sqlplus 用户名/密码@连接标识符`来登录...

Global site tag (gtag.js) - Google Analytics