Flash 从类访问ActionScript3嵌套电影剪辑

Flash 从类访问ActionScript3嵌套电影剪辑,flash,actionscript-3,Flash,Actionscript 3,我正在尝试用FlashCS3编写一个非常简单/最小的自定义视频播放器 我有一个.fla文件,在我的库中有两个MovieClips、播放器和播放按钮。PlayButton movieclip位于播放器movieclip内的第一帧上。播放器导出到actionscript并链接到动态创建视频对象的Player.as类 我的文档类是MPlayer.as,它向stage添加了一个Player实例。这很好,视频将自动播放。但是,我的库项目播放器中的PlayButton movieclip没有显示…我不知道如

我正在尝试用FlashCS3编写一个非常简单/最小的自定义视频播放器

我有一个.fla文件,在我的库中有两个MovieClips、播放器和播放按钮。PlayButton movieclip位于播放器movieclip内的第一帧上。播放器导出到actionscript并链接到动态创建视频对象的Player.as类

我的文档类是MPlayer.as,它向stage添加了一个Player实例。这很好,视频将自动播放。但是,我的库项目播放器中的PlayButton movieclip没有显示…我不知道如何访问它或让它显示。它与视频不在同一位置,所以它不应该在它下面…我尝试从Player.as添加child(playbutton\u instance\u name),但我得到了错误。播放器movieclip是为actionscript导出的,但PlayButton movieclip不是,因为它位于播放器内部


我的设置正确吗?

听起来不错。如果它在你的播放器MovieClip中,它将在其中导出。你确定它在播放器剪辑中吗?您可以像访问Player.as类的变量一样访问它,也就是说,如果PlayButton的实例名为“playBtn”,您可以(在构造函数中)尝试


如果剪辑正确地位于类中,它应该跟踪类似于[PlayButton]的内容。如果你愿意,在你的问题中张贴你的代码,或者如果你愿意,我可以看看你的文件。

听起来不错。如果它在你的播放器MovieClip中,它将在其中导出。你确定它在播放器剪辑中吗?您可以像访问Player.as类的变量一样访问它,也就是说,如果PlayButton的实例名为“playBtn”,您可以(在构造函数中)尝试


如果剪辑正确地位于类中,它应该跟踪类似于[PlayButton]的内容。如果您愿意,请在问题中发布您的代码,或者如果您愿意,我可以查看您的文件。

还要确保您的按钮不在Flash的引导层上。嘿,谢谢!我一直在为将自定义AS2播放器升级到AS3而烦恼,这是一项相当艰巨的任务,因为从v1开始我就没有接触过ActionScript。我很了解OOP(我想),所以我喜欢AS3,但我有点不习惯。以下是所有文件,播放器是一个Flash CS3文件:看起来问题可能不是我的实际代码,而是我的类文件在包中的位置。我从头开始,创建了一个新的非常基本的设置,就像现在一样……当我的Player和MPlayer类处于.swf文件的同一级别时,它会按照我的预期工作。当我将它们放入包中时,它可以很好地编译并运行,但舞台项目从未显示。与swf=works的级别相同的两个类文件都可以将两个类移动到packages=compiles,Player movieclip中的时间线项目在舞台上显示,但动态生成的项目不会显示。如果我将Player.as的副本粘贴到与swf文件相同的级别,它将重新开始工作(即使我没有在任何类中引用该文件)…有什么想法吗?好的,首先是你有一个名为Player的“类”,它处理视频内容,但你必须将库中的MovieClip与该类关联。因此,右键单击库中的“播放器”并说“导出actionscript”…然后您的内部资源就会显示出来。同时确保您的按钮不在Flash中的引导层上。嘿,谢谢!我一直在为将自定义AS2播放器升级到AS3而烦恼,这是一项相当艰巨的任务,因为从v1开始我就没有接触过ActionScript。我很了解OOP(我想),所以我喜欢AS3,但我有点不习惯。以下是所有文件,播放器是一个Flash CS3文件:看起来问题可能不是我的实际代码,而是我的类文件在包中的位置。我从头开始,创建了一个新的非常基本的设置,就像现在一样……当我的Player和MPlayer类处于.swf文件的同一级别时,它会按照我的预期工作。当我将它们放入包中时,它可以很好地编译并运行,但舞台项目从未显示。与swf=works的级别相同的两个类文件都可以将两个类移动到packages=compiles,Player movieclip中的时间线项目在舞台上显示,但动态生成的项目不会显示。如果我将Player.as的副本粘贴到与swf文件相同的级别,它将重新开始工作(即使我没有在任何类中引用该文件)…有什么想法吗?好的,首先是你有一个名为Player的“类”,它处理视频内容,但你必须将库中的MovieClip与该类关联。因此,右键单击库中的“播放器”并说“导出actionscript”……然后您的内部资产就会显示出来。
public function Play()
{
    trace(this.playBtn);
}