稍后在时间轴中引用MovieClip符号

时间:2011-07-22 15:27:31

标签: flash actionscript-3

我一直在尝试使用它的实例名称引用第2帧中引入的库符号,仅使用时间轴脚本。

我正在尝试制作一个颜色选择器MC符号,以便多次重复使用。首先,我在舞台上画了一个小按钮并转换为MC,名为textColourPicker CPicker类型(用于在库中表示此MC的类)。在这个MC里面,我有一个名为pickerButton

的按钮符号

textColourPicker MC的第一帧中,我放置了代码:

stop();
pickerButton.addEventListener(MouseEvent.CLICK, doShowPicker);

function doShowPicker(e:MouseEvent):void
{
    gotoAndPlay(2);

}

textColourPicker实例的第2帧中,会出现一个新的MC,其实例名称pickerBox的类型为pickerBMP。然后将pickerBox缩放到第14帧,此时我有代码:

stop();
pickerBox.addEventListener(MouseEvent.MOUSE_OVER, cursorToColour);

除了我总是收到错误:

TypeError: Error #1009: Cannot access a property or method of a null object reference.
    at CPicker/frame14()[CPicker::frame14:10]

此处CPicker指的是textColourPicker MC的链接名称。

所以textColourPicker是实例:myPicker,链接名称:CPicker

pickerBox是:pickerBMP的实例,链接名称:pickerBMP(位于textColourPicker MC内。

为什么不允许我在pickerBox的第14帧引用textColourPicker MC?

textColourPicker时间轴的图形可能有助于说明所有这些(请注意两个时间轴脚本图标,第一帧位于第14帧中的第1帧:

Timeline screengrab

1 个答案:

答案 0 :(得分:1)

我为InsideRIA写了一篇关于完全按照你要做的事情的帖子。它存档在这里:

http://www.developria.com/2010/04/combining-the-timeline-with-oo.html

在我看来,你最好的选择是getter / setter方法,因为你在最后有一个关键帧,新的值将插入到变量的值中。

此处提供了两种方法的示例代码http://flexdiary.blogspot.com/2010/04/sample-code-for-oop-timeline-insideria.html

HTH;

艾米

相关问题