创建 ActionScript 类文件

所有组件元件都链接到 ActionScript 2.0 类文件。(有关链接的信息,请参阅创建组件影片剪辑。)

要编辑 ActionScript 类文件,您可以使用 Flash、任何文本编辑器,也可以使用任何"集成开发环境"(IDE)。

外部 ActionScript 类扩展其它类(无论该类是第 2 版组件、第 2 版基类还是 ActionScript MovieClip 类)。您应扩展所创建的功能与要创建的组件最类似的类。只能从一个类继承(扩展)。ActionScript 2.0 不允许多继承。

本节包含以下主题:

组件类文件的简单示例

下面是类文件的一个简单示例,该类文件名为 MyComponent.as。如果要创建此组件,应将该类文件链接到 Flash 中的组件影片剪辑。

此示例包含从 UIComponent 类继承的组件 MyComponent 至少应有的一组导入、方法和声明。MyComponents.as 文件保存在 myPackage 文件夹中。

[Event("eventName")]

// 导入包。
import mx.core.UIObject;

// 声明类并从父类扩展。
class mypackage.MyComponent extends UIObject {

    // 标识此类所绑定到的元件名称。
    static var symbolName:String = "mypackage.MyComponent";

    // 标识元件所有者的完全限定包名称。
    static var symbolOwner:Object = Object(mypackage.MyComponent);

    // 提供 className 变量。
    var className:String = "MyComponent";

    // 定义一个空构造函数。
    function MyComponent() {
    }

    // 调用父级的 init() 方法。
    // 隐藏边框,该边框
    // 仅在创作时使用。
    function init():Void {
        super.init();


    boundingBox_mc.width = 0;
    boundingBox_mc.height = 0;
    boundingBox_mc.visible = false;
} function createChildren():Void{ // 调用 createClassObject 来创建子对象。 size(); invalidate(); } function size(){ // 编写处理大小的代码。 super.size(); invalidate(); } function draw(){ // 编写处理可视化表示形式的代码。 super.draw(); } }

组件类文件概述

以下是介绍如何为组件类创建 ActionScript 文件的常规过程。根据所创建组件类型的不同,某些步骤是可选步骤。

编写组件类文件:

  1. (可选)导入类。(请参阅导入类)。

    执行这一步骤,则无需写出包(例如,使用 Button 而不是 mx.controls.Button)即可引用类。

  2. 使用 class 关键字定义类;使用 extend 关键字扩展父类。(请参阅定义类及其超类)。
  3. 定义 symbolNamesymbolOwnerclassName 变量。(请参阅标识类、元件和所有者名称)。

    只有第 2 版组件才需要这些变量。

  4. 定义成员变量。(请参阅定义变量)。

    这些变量可用于 getter/setter 方法。

  5. 定义一个构造函数。(请参阅关于构造函数)。
  6. 定义 init() 方法。(请参阅定义 init() 方法)。

    如果类扩展的是 UIComponent,则创建类时会调用此方法。如果类扩展的是 MovieClip,则从构造函数调用此方法。

  7. 定义 createChildren() 方法。(请参阅定义 createChildren() 方法)。

    如果类扩展的是 UIComponent,则创建类时会调用此方法。如果类扩展的是 MovieClip,则从构造函数调用此方法。

  8. 定义 size() 方法。(请参阅定义 size() 方法)。

    如果类扩展的是 UIComponent,则调整组件大小时调用此方法。此外,在创作时调整组件的实时预览大小时也会调用此方法。

  9. 定义 draw() 方法。(请参阅关于无效)。

    如果类扩展的是 UIComponent,则组件无效时调用此方法。

  10. 添加一个元数据标记和声明。(请参阅添加组件元数据)。

    添加标记和声明可使 getter/setter 属性显示在 Flash 的"属性"检查器和"组件"检查器中。

  11. 定义 getter/setter 方法。(请参阅使用 getter/setter 方法定义参数)。
  12. (可选)为组件中使用的每个外观元素/链接创建变量。(请参阅关于指定外观)。

    执行这一步骤,用户则可通过更改组件中的参数来设置不同的外观元素。