为什么我的3d属性不能在flash cs4中的舞台上设置

我做了一个非常简单的swf,其中有一个我在舞台上旋转的MovieClip。 当我尝试使用分配给此MovieClip的类的构造函数访问此剪辑的rotationX和rotationY属性时,即使它们不应该是0,它们也会返回为0。 如果我放置MovieClip的翻转事件并在这里​​追踪这些属性,我会得到正确的值。

package {

    import flash.display.MovieClip;
    import flash.events.MouseEvent;

    public class TestMC extends MovieClip {

        function TestMC() {
            trace ("ROTATION IS "+this.rotationX+" "+this.rotationY); //traces ROTATION IS 0 0 
            addEventListener(Event.ADDED_TO_STAGE, init);
            addEventListener(MouseEvent.ROLL_OVER, rollOver);
        }
        function init(e:Event) {
            trace ("INIT ROTATION IS "+rotationX+" "+rotationY); //traces INIT ROTATION IS 0 0 
        }
        function rollOver(e:Event) {
            trace ("ROTATION IS "+rotationX+" "+rotationY); //traces correct values!
        }
    }
}

当我读取舞台时间线的值时,我也会得到正确的值。

trace ("TEST "+testMC.rotationX+" "+testMC.rotationY); //returns correct value

是否有一个特定的事件需要等待,这会告诉我何时可以通过ActionScript获得3D属性?


也许addToStage事件(的DisplayObject类)是你正在寻找。

链接地址: http://www.djcxy.com/p/17733.html

上一篇: why aren't my 3d properties set on the stage in flash cs4 accessible

下一篇: Get Flash CS4 Intelisense to recognize Objects on stage?