flash - 文档类中的阶段为空? ActionScript 3.0 Flash CS5

标签 flash actionscript-3 flash-cs5

在我名为 Engine 的文档类中,阶段变量由于某种原因为空:

package game
{

    import flash.display.MovieClip;
    import flash.display.Stage;
    import flash.events.Event;
    public class Engine extends MovieClip
    {
        public function Engine()
        {
            trace(stage); // gives Null
        }
    }
}

到目前为止一切正常。我最近刚刚将两个动态文本字段添加到一个符号中,突然间舞台为空。我真的看不出其中的联系。

这是我第一次使用 actionscript 和 flash,所以对所有事情都有点困惑。

最佳答案

好的,我已经通过在 CS5 的舞台上添加 TLF 字体重现了您遇到的情况,这一定是导致它的原因。但是这段代码应该可以解决您的问题:

public function Engine():void 
{ 
     if( !this.stage ) 
         this.addEventListener( Event.ADDED_TO_STAGE, init ); 
     else 
         init(); 
} 

private function init(e:Event = null):void 
{ 
   this.removeEventListener( Event.ADDED_TO_STAGE, init ); 
   trace(stage);
 }  

我的猜测是在这种情况下创建舞台有一些延迟。我遇到过这种情况,但不知道为什么,所以这就是我处理它的方式。有用! :)

关于flash - 文档类中的阶段为空? ActionScript 3.0 Flash CS5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5988023/

相关文章:

flash - 在Flash项目中重用库项目

java - 使用Red5需要Java吗

css - 如何检查页面是否加载到 facebook canvas 中并相应地更改布局

security - 如何安全地嵌入任何 Flash 文件 (swf)?

flash - 在Actionscript中绘制三次贝塞尔曲线?

actionscript-3 - 如何制作 TextField 多行?

actionscript-3 - 获取使用 `Sound` 对象下载的 mp3 文件的原始数据

css - 使用 Dreamweaver CS5.5 检查浏览器兼容性错误

ffmpeg - MP4 的实时转码和流式传输在 Android 中有效,但在 Flash 播放器中失败并出现 NetStream.Play.FileStructureInvalid 错误

flash - 检测动画片段已在 as3 的舞台上水平翻转