写了一个 ContextMenuPlus 类来自定义右键菜单。一行代码可以搞定禁用系统内置菜单(target为设置自定义菜单的目标,如果为自己可以省略):

target.contextMenu = new ContextMenuPlus().contextMenu;

  当然它能做的事情不止于此。看看示例:

  自定义文本区域的右键菜单同样是一行代码:

txt.contextMenu = new ContextMenuPlus(true,
                
onSetTxtColor,
                
"红色文字",
                
"蓝色文字",
                
"黑色文字").contextMenu;

阅读全文 »

  新的 for each … in 除了遍历XML,同样可以用来遍历数组和对象。创建“百万雄兵”:

var testArr:Array = new Array();
for(var i:Number = 0; i < 1000000; i++)
{
    
testArr.push(i);
}

  以前的 for 和 for … in 以及新的 for each … in 循环: 阅读全文 »

  首先值得一提的是AS3的 Array 有了像 String 一样的 indexOf() 和 lastIndexOf() 。另外增加了几个很有用的 Method。

every(callback:Function, thisObject:* = null):Boolean

检测是否数组所有元素都满足 callback 方法指定的条件。

some(callback:Function, thisObject:* = null):Boolean

检测数组中是否有元素满足 callback 方法指定的条件。 阅读全文 »

  AS2的 connect() 方法返回一个 Boolean 值,如果尝试连接的 connectionName 已经被同一机器上的其他进程 connect 将返回 false ,可以尝试连接其他值。例如想要打开的swf按顺序依次连接 “1”,“2”,“3”……

var conn:LocalConnection = new LocalConnection();
var id:Number = 1;
while (!conn.connect(String(id))) {
    
id++;
}

  AS3的 connect() 方法已经没有返回值了,那么想在连接失败的时候尝试其它连接就只能通过捕获 ArgumentError 。 阅读全文 »

  AS3里所有能在舞台(Stage)上看到的东西都继承自 DisplayObject 。如果让它最终显示出来还需要使用某个 DisplayObjectContainer 的addChild() 或者 addChildAt() 方法把它加到显示列表(display list)里。看看图示: 阅读全文 »

Pages: Prev 1 2 3 4 5 6 Next