显示编程的基础知识

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 对象,其中包含各种显示对象:

    <包含显示对象的 Sprite>
    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 中的所有可视内容的库或背景的可视容器。

转换
对图形的视觉特性的调整,例如旋转对象、更改其比例、倾斜或扭曲其形状或改变其颜色。

矢量图形
在计算机中定义为使用特定特性(如粗细、长度、大小、角度以及位置)绘制的线条和形状的图形。