MX2004--AS2.0 新特性实例教程(一)
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-14
|
1.Array.sort()和Arrat.sortOn()
????现在这两个方法允许你增加参数来制定额外的排序规则,比如升序排列,降序排列,是否考虑大小写等等。而Flash MX中只能够按照升序排列,并且是按照先大写后小写的顺序的。 例:
my_array=new Array(); my_array.push({Name:"jinni",Age:20}); my_array.push({Name:"Sucy",Age:22}); my_array.push({Name:"alien",Age:20}); my_array.push({Name:"jinni_Alien",Age:9});
for(i=0;i<4;i++) for (temp in my_array[i]) trace(my_array[i][temp]); trace("\n"); //以下四种任选其一进行测试
//普通,只提供一个字段,按升序,先大写后小写排序 my_array.sortOn("Age");
for(i=0;i<4;i++) for (temp in my_array[i]) trace(my_array[i][temp]); trace("\n"); //提供字段列表,先按前一个字段排序,如果第一个字段值相同的项存在 //按照第二个字段进行子排序,以此类推,规则同前 my_array.sortOn(["Age","Name"]);
for(i=0;i<4;i++) for (temp in my_array[i]) trace(my_array[i][temp]); trace("\n"); //提供字段和排序规则,排序规则的内容如下: //1 或者 Array.CASEINSENSITIVE 忽略大小写 //2 或者 Array.DESCENDING 降序排列 //4 或者 Array.UNIQUE 如果数组中含有排序字段值相同的项, // 则该方法返回0,且不改变原数组 //8 或者 Array.RETURNINDEXEDARRAY 不改变原数组,而返回更改后的数组 //16 或者 Array.NUMERIC 按照数字大小,换句话说,2不会排在1X的后面 //可以同时使用多种规则,可以用|连接多个规则,例如sortOn("name",1|2) //也可以写他们的和,比如想同时使用规则2,16,可以写sortOn("age",18) my_array.sortOn("Name",3);
for(i=0;i<4;i++) for (temp in my_array[i]) trace(my_array[i][temp]); trace("\n"); //提供字段列表和排序规则,就是第二类和第三类的综合 myArray.sortOn(["Age","Name"],16);
for(i=0;i<4;i++) for (temp in my_array[i]) trace(my_array[i][temp]); trace("\n");
|
|
2.onMouseWheel
????对Mouse()对象增加了onMouseWheel事件,用来监测鼠标滑轮事件,需要放到侦听器中使用。 ????这个事件的处理函数可以有两个可选参数: a) delta: ????表征鼠标滑轮滚动的方向及速度,正数为向上滚动,负数为向下,取值范围-3,-2,-1,1,2,3,delta的绝对值越大,说明滚动的幅度越大。 b) scrollTarget: ????如果使用scrollTarget,则设delta为null。 ????这个参数我还没有搞清楚,从帮助来看似乎是当鼠标滑轮滚动时,在鼠标所在位置处于最上方的电影剪辑实例。
????例:
myListener = new Object(); myListener.onMouseWheel = function(delta) { trace("Mouse Wheel Test!\nScroll:"+delta); ????} Mouse.addListener(myListener); |
|
????注意,在测试前先用鼠标点击一下动画,确保动画可以接收键盘和鼠标的事件。
3.MoiveClip.getSWFVersion()
????返回发布MoiveClip的SWF动画的浏览器的版本号,一个整数。如果MovieClip是一个JPG文件,或发生错误,无法获得版本号,则返回-1。 例:
trace(_root.getSWFVersion()); |
|
????返回值7。
4.MovieClip.getNextHighestDepth()
????这个方法可以让你获得MovieClip内部的一个可用depth值, 这个值比所有已被其他元件占据的depth的值高。 这样可以确保你在这个mc内部进行绑定,复制,创建mc时新出现的mc一定在已存在的mc上方。 ????这个方法只返回0或正值。下面的例子可以很好的帮你理解它: 例: ????建立一个新的mc,命名为my_mc,在my_mc内部,手工的添加两个新的mc:my2_mc,my3_mc,添加如下代码:
trace(my_mc.getNextHighestDepth()); |
|
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn
为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!
|