显示编程的基础知识
Flash Player 9 和更高版本,Adobe AIR 1.0 和更高版本
使用 ActionScript 3.0 构建的每个应用程序都有一个由显示对象构成的层次,这个层次称为显示列表,如下所示。显示列表包含应用程序中的所有可视元素。
如图所示,显示元素分为以下一个或多个组:
Stage
Stage 是包括显示对象的基础容器。每个应用程序都有一个 Stage 对象,其中包含所有的屏幕显示对象。舞台是顶级容器,位于显示列表层次的顶部:
每个 SWF 文件都有一个关联的 ActionScript 类,该类称为“SWF 文件的主类”。在 Flash Player 或 Adobe AIR 中打开 SWF 文件时,Flash Player 或 AIR 将调用该类的构造函数,并添加所创建的实例(始终是一种显示对象)作为 Stage 对象的子级。SWF 文件的主类始终用于扩展 Sprite 类(有关详细信息,请参阅显示列表方法的优点)。
可以通过任何 DisplayObject 实例的 stage 属性来访问舞台。有关详细信息,请参阅设置舞台属性。
显示对象
在 ActionScript 3.0 中,在应用程序屏幕上出现的所有元素都属于“显示对象”类型。flash.display 包中包含一个 DisplayObject 类,该类是一个由许多其他类扩展的基类。这些不同的类表示一些不同类型的显示对象,如矢量形状、影片剪辑和文本字段等。有关这些类的概述,请参阅显示列表方法的优点。
显示对象容器
显示对象容器是一些特殊类型的显示对象,这些显示对象除了有自己的可视表示形式之外,还可以包含也是显示对象的子对象。
DisplayObjectContainer 类是 DisplayObject 类的子类。DisplayObjectContainer 对象可以在其“子级列表”中包含多个显示对象。例如,下图显示一种称为 Sprite 的 DisplayObjectContainer 对象,其中包含各种显示对象:
- A.
- SimpleButton 对象。此类显示对象有不同的“弹起”、“按下”和“指针经过”状态。
- B.
- Bitmap 对象。本例中,Bitmap 对象是通过 Loader 对象从外部 JPEG 加载的。
- C.
- Shape 对象。“图片帧”包含一个在 ActionScript 中绘制的圆角矩形。此 Shape 对象有一个应用于它的 Drop Shadow 滤镜。
- D.
- 一个 TextField 对象。
在讨论显示对象的上下文中,DisplayObjectContainer 对象又称为“显示对象容器”或简称为“容器”。如前所述,舞台是显示对象容器。
尽管所有可视显示对象都从 DisplayObject 类继承,但每类显示对象都是 DisplayObject 类的一个特定子类。例如,有 Shape 类或 Video 类的构造函数,但没有 DisplayObject 类的构造函数。
重要概念和术语
以下参考列表包含您在对 ActionScript 图形进行编程时会遇到的重要术语:
- Alpha
- 表示颜色透明度(或者更准确地说,是不透明度)的颜色值。例如,Alpha 通道值为 60% 的颜色只显示其最大强度的 60%,即有 40% 是透明的。
- 位图图形
- 在计算机中定义为彩色像素网格(行和列)的图形。通常,位图图形包括数码照片和类似图像。
- 混合模式
- 说明两个重叠的图像的内容应该如何交互的规范。通常,一个图像上面的另一个不透明图像会遮盖住下面的图像,因此根本看不到该图像;但是,不同的混合模式会导致图像颜色以不同方式混合在一起,因此,生成的内容是两个图像的某种组合形式。
- 显示列表
- 由 Flash Player 和 AIR 呈现为可见屏幕内容的显示对象的层次。舞台是显示列表的根,附加到舞台或其一个子项上的所有显示对象构成了显示列表(即使对象实际上并未呈现,例如,对象位于舞台边界以外)。
- 显示对象
- 表示 Flash Player 或 AIR 中的某些可视类型的内容的对象。显示列表中只能包含显示对象,所有显示对象类都是 DisplayObject 类的子类。
- 显示对象容器
- 一种特殊类型的显示对象,除了(通常)具有自己的可视表示形式以外,还可以包含子显示对象。
- SWF 文件的主类
- 定义 SWF 文件中最外层显示对象的行为的类,从概念上说,这是 SWF 文件自身的类。例如,对于在 Flash 创作工具中创建的 SWF,主类为文档类。它具有一个包含所有其他时间轴的“主时间轴”;SWF 文件的主类是将主时间轴作为其实例的类。
- 蒙版
- 一种隐藏视图中图像的特定部分(或相反,只允许显示图像的特定部分)的技术。遮罩图像部分将变为透明,因此,将显示其下面的内容。此术语与画家所使用的遮蔽胶带非常相似,遮蔽胶带用于防止将颜料喷到某些区域上。
- 舞台
- 作为 SWF 中的所有可视内容的库或背景的可视容器。
- 转换
- 对图形的视觉特性的调整,例如旋转对象、更改其比例、倾斜或扭曲其形状或改变其颜色。
- 矢量图形
- 在计算机中定义为使用特定特性(如粗细、长度、大小、角度以及位置)绘制的线条和形状的图形。