AS2的 Key.isDown() 在AS3里已经 Removed 了,想要监听键盘事件只能 addEventListener。本来想用一个 Sprite 监听:

public class Test extends Sprite{
    
public function Test(){
        
addEventListener(KeyboardEvent.KEY_DOWN,onKeyDown);
    
}
    
private function onKeyDown(event:KeyboardEvent):void{
        
trace(event.keyCode);
    
}
}

这样需要保证始终聚焦这个 Sprite : 阅读全文 »

  AS3支持 label 了,跳出多层循环可以这样写:

outerLoop: for (var i:int = 0; i < 10; i++) {
    
for (var j:int = 0; j < 10; j++) {
        
if ( (i == 8) && (j == 0)) break outerLoop;
        
trace(10 * i + j);
    
}
}

  AS2 的时候只能多加个变量判断:
阅读全文 »

  AS3有了按钮类:SimpleButton ,可以为四种状态分别指定不同的 DisplayObject 。但是 SimpleButton 没有继承 DisplayObjectContainer 类,也就是不能给它添加其他的 child 。如果要创建一个带文字的 Button 怎么办?两种方案:

  • 方案一:把文字加到每种 state 里。因为 Shape 也没有继承 DisplayObjectContainer 类,要添加文字 state 就要用 Sprite 。优点是每种状态可以有不同的文字颜色、大小、位置等。缺点是不方便改文字内容。
  • 方案二:把 SimpleButton 和 TextField 一起放到一个 Sprite 里。这样 SimpleButton 的 state 可以用 Shape 以节省内存空间。优缺点和方案一相反。[feel_good]

  看看 代码 和演示:
阅读全文 »

  首先,AS3里function的参数可以有默认值了。

public function TestFunc(){
    
myFunc();
}
private function myFunc(para1:int=10,para2:String="str"):void{
    
trace(para1 + " , " + para2);    //10 , str
}

  AS3里不能给出多余的参数(少了也不行,所有没有默认值的参数都必须给值),
阅读全文 »

  做东西的时候发现AS3的EventDispatcher类好像不能传参数。请教 bogey ,答曰,写一个类继承 Event ,把参数放在构造里。试了一下,果然好用。有个牛×同事就是好 [haha]
  做个演示:(查看类代码

  页面生成部分就不介绍了,唯一值得注意的是 TextField 类增加了一个 appendText 方法。以前的
阅读全文 »

Pages: Prev 1 2 3 4 5 6 Next