从基础开始深入Flash AS3教程(1)(译文)
在as3中,你可以使用stage类动态的修改影片的帧频。
stage类(flash.display.stage)的stage对象是所有的sprite和movieclip以及其他在安全沙箱里的所有元件的舞台。stage对象的帧频可以是0.01到1000之间的任何一个数。要修改帧频,使用下面的代码:
// 将帧频修改到12帧每秒(fps)
stage.framerate = 12;
类方法的作用域和类绑定在一起
as3完全基于类构造。当一个类被创建的时候,类中的参数,变量,方法或任何实例都同时被创建。和as2不同,as3中的方法在执行的时候,将使用和类同样的作用域。例如下面的代码:
package {
import flash.display.sprite;
public class classscope extends sprite {
public function classscope() {
tracethis(); // 输出"class instance"
var obj:object = new object();
obj.tracethis = tracethis;
obj.tracethis(); // 输出"class instance"
tracethis.call(new sprite()); // 输出"class instance"
}
public override function tostring():string {
return "class instance";
}
public function tracethis():void {
trace(this);
}
}
}
图形对象和绘图api
和as1和as2一样,as3也提供了绘图api来绘制矢量线段和图形。但是在as3中,绘图api将独立于显示对象(display objects:moiveclip,sprites等)而被定义为图形对象(flash.display.graphics)。图形对象拥有各种绘图方法用来在内部绘制图形。和以前一样,图形内容将在所有对象的最下层。同时,在as3中有一些新的方法来帮助你方便的绘制简单的图形。包括:
园:drawcircle(x:number, y:number, radius:number):void
椭圆:drawellipse(x:number, y:number, width:number, height:number):void
矩形:drawrect(x:number, y:number, width:number, height:number):void
圆角矩形:drawroundrect(x:number, y:number, width:number, height:number, ellipsewidth:number, ellipseheight:number):void
代码举例:
// 绘制一个蓝色的圆角矩形
var square:sprite = new sprite();
square.graphics.beginfill(0xff);
square.graphics.drawroundrect(0, 0, 100, 50, 10, 10);
square.graphics.endfill();
addchild(square);