当前位置: 首页 > 图文教程 > Flash动画 > ActionScript > 从基础开始深入Flash AS3教程(1)(译文)

ActionScript
Flash as与影片剪辑的调用
Flash AS2教程:缓冲运动
flash as2的缓动类
FLASH AS教程:ActionScript3简介
Flash AS3教程:编程基础
ActionScript和网页JavaScript互相调用
Flash ActinScript 3.0基础知识
ActionScript 3.0的流程控制语法
ActinScript3.0开发基础知识:可重用代码
Flash自定义函数实例
ActoinScript教程:小数坐标处理
AS教程:鼠标拖拽与旋转MC
Flash AS3基础教程:掌握鼠标事件应用
Flash AS3教程:快速制作烟雾动画
Flash AS代码书写约定和书写习惯
学习Flex:常见的Flex代码
Flex教程:ScriptLimits标签
Flash AS教程:propertydata问题解决
Flash AS3单列模式实现方式
as3中通过ByteArray进行对象的深度拷贝

ActionScript 中的 从基础开始深入Flash AS3教程(1)(译文)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-16   浏览: 86 ::
收藏到网摘: n/a

动态修改影片的帧频
在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);