MovieClip 数据类型

影片剪辑是 Flash 应用程序中可以播放动画的元件。它们是唯一引用图形元素的数据类型。MovieClip 数据类型允许您使用 MovieClip 类的方法控制影片剪辑元件。

调用 MovieClip 类的方法时不使用构造函数。可以在舞台上创建一个影片剪辑实例,或者动态地创建一个实例。然后只需使用点 (.) 运算符调用 MovieClip 类的方法。

在舞台上使用影片剪辑 下例为舞台上不同的影片剪辑实例调用 startDrag()getURL() 方法:

my_mc.startDrag(true);
parent_mc.getURL("http://www.adobe.com/support/" + product);

第二个示例返回舞台上名为 my_mc 的影片剪辑的宽度。所针对的实例必须是影片剪辑,返回的值必须是数字值。

function getMCWidth(target_mc:MovieClip):Number {
    return target_mc._width;
}
trace(getMCWidth(my_mc));

动态创建影片剪辑 当您想要避免在舞台上手动创建影片剪辑或想避免从库中手动附加影片剪辑时,使用 ActionScript 动态地创建影片剪辑非常有用。例如,您可以创建一个图库,里面存放大量您想要在舞台上组织的缩略图。使用 MovieClip.createEmptyMovieClip() 允许您完全使用 ActionScript 创建应用程序。

要动态地创建影片剪辑,请使用 MovieClip.createEmptyMovieClip(),如下例所示:

// 创建一个影片剪辑以放置该容器。
this.createEmptyMovieClip("image_mc", 9);
// 将图像加载到 image_mc 中。
image_mc.loadMovie("http://www.helpexamples.com/flash/images/image1.jpg");

第二个示例创建一个名为 square_mc 的影片剪辑,该影片剪辑使用绘图 API 绘制一个矩形。其中添加了事件处理函数以及 MovieClip 类的 startDrag()stopDrag() 方法,以使矩形可拖动。

this.createEmptyMovieClip("square_mc", 1);
square_mc.lineStyle(1, 0x000000, 100);
square_mc.beginFill(0xFF0000, 100);
square_mc.moveTo(100, 100);
square_mc.lineTo(200, 100);
square_mc.lineTo(200, 200);
square_mc.lineTo(100, 200);
square_mc.lineTo(100, 100);
square_mc.endFill();
square_mc.onPress = function() {
    this.startDrag();
};
square_mc.onRelease = function() {
    this.stopDrag();
};

有关详细信息,请参阅"使用影片剪辑"和《ActionScript 2.0 语言参考》中的 MovieClip 条目。