技术文章
ActionScript 3.0显示编程简介
加入时间:2009-5-31 10:37:30

使用 ActionScript 3.0 构建的每个应用程序都有一个由显示对象构成的层次结构,这个结构称为“显示列表”,如下所示。显示列表包含应用程序中的所有可视元素。

如图所示,显示元素分为以下一个或多个组:

  • 舞台

    舞台是包括显示对象的基础容器。每个应用程序都有一个 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 编程都涉及创建和处理可视元素,因此存在许多与显示编程有关的任务。本章介绍适用于所有显示对象的常见任务,其中包括:

    • 处理显示列表和显示对象容器

      • 在显示列表中添加显示对象

      • 从显示列表中删除对象

      • 在显示容器间移动对象

      • 将对象移到其它对象的前面或后面

    • 处理舞台

      • 设置帧速率

      • 控制舞台缩放比例

      • 处理全屏模式

    • 处理显示对象事件

    • 确定显示对象的位置,包括创建拖放交互组件

    • 缩放、旋转显示对象及调整其大小

    • 对显示对象应用混合模式、颜色转换和透明度

    • 遮罩显示对象

    • 对显示对象进行动画处理

    • 加载外部显示内容(如 SWF 文件或图像)

    本手册中的后面几章将介绍有关处理显示对象的其它任务。这些任务包括适用于任何显示对象的任务和与特定类型的显示对象相关的任务:

    • 使用 ActionScript 在显示对象上绘制矢量图形,具体内容请参阅使用绘图 API

    • 对显示对象应用几何转换,具体内容请参阅处理几何结构

    • 对显示对象应用图形滤镜效果(如模糊、发光、投影等),具体内容请参阅过滤显示对象

    • 使用特定于影片剪辑的特性,具体内容请参阅处理影片剪辑

    • 使用 TextField 对象,具体内容请参阅处理文本

    • 使用位图图形,具体内容请参阅处理位图

    • 使用视频元素,具体内容请参阅处理视频

    重要概念和术语

    以下参考列表包含将会在本章中遇到的重要术语:

    • Alpha:表示颜色中的透明度(更准确地说,是不透明度)的颜色值。例如,Alpha 通道值为 60% 的颜色只显示其最大强度的 60%,即只有 40% 是透明的。

    • 位图图形:在计算机中定义为彩色像素网格(行和列)的图形。通常,位图图形包括数码照片和类似图像。

    • 混合模式:指定两个重叠图像的内容应如何进行交互。通常,一个图像上面的另一个不透明图像会遮盖住下面的图像,因此根本看不到该图像;但是,不同的混合模式会导致图像颜色以不同方式混合在一起,因此,生成的内容是两个图像的某种组合形式。

    • 显示列表:由 Flash Player 和 AIR 呈现为可见屏幕内容的显示对象的层次结构。舞台是显示列表的根,附加到舞台或其子级之一上的所有显示对象构成了显示列表(即使对象实际上并未呈现,例如,对象位于舞台边界以外)。

    • 显示对象:在 Flash Player 或 AIR 中表示某种类型的可视内容的对象。显示列表中只能包含显示对象,所有显示对象类是 DisplayObject 类的子类。

    • 显示对象容器:一种特殊类型的显示对象,除了(通常)具有其自己的可视表示形式以外,它还可以包含子显示对象。

    • SWF 文件的主类:为 SWF 文件中最外面的显示对象定义行为的类,从概念上讲,它是 SWF 文件本身的类。例如,在 Flash 创作工具中创建的 SWF 具有一个“主时间轴”,其中包含所有其它时间轴;SWF 文件的主类是指将主时间轴作为其实例的类。

    • 蒙版:一种将图像的某些部分隐藏起来(或者相反,只允许显示图像的某些部分)的技术。遮罩图像部分将变为透明,因此,将显示其下面的内容。此术语与画家所使用的遮蔽胶带非常相似,遮蔽胶带用于防止将颜料喷到某些区域上。

    • 舞台:一个可视容器,它是 SWF 文件中的所有可视内容的基础或背景。

    • 变形:对图形的可视特性进行的调整,如旋转对象、改变其缩放比例、倾斜或扭曲其形状或者改变其颜色。

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

    完成本章中的示例

    在学习本章时,您可能想要自己动手测试一些示例代码清单。由于本章介绍如何创建和操作可视内容,本章中的所有代码清单会实际创建可视对象并将它们显示在屏幕上;测试范例将涉及在 Flash Player 或 AIR 中查看结果,而不是像前几章那样查看变量值。要测试本章中的代码清单,请执行以下操作:

    1. 使用 Flash 创作工具创建空文档

    2. 在时间轴上选择一关键帧。

    3. 打开“动作”面板,将代码清单复制到“脚本”窗格中。

    4. 通过“控制”>“测试影片”运行程序。

      您将看到显示在屏幕上的代码结果,并且所有 trace() 函数调用将显示在“输出”面板中。

地址:邢台市亿德隆中街32号 邮编:054001 电话:0319-3695885/3695886/3695887
客服1(QQ):152557475     客服2(QQ):1790779088
Copyright(C) 2009 V1.0 100un.cn 冀ICP备05004612号