【问题标题】:Accessing a variable declared in fla from document class从文档类访问在 fla 中声明的变量
【发布时间】:2011-05-24 07:45:46
【问题描述】:

在舞台上,我有一个名为rect_mc 的影片剪辑。里面有一个MovieClip square_mc

在我双击rect_mc时得到的时间线(rect_mc的时间线)我写了以下代码

var width1:Number;
width1 = sqaure_mc.width;

如何从文档类访问width1

我想要的是访问时间轴中声明的变量 (width1) 的rect_mc。只是为了举例,我选择了 MovieClip 的宽度。

我的疑问是如何从rect_mc 的时间线中访问声明的变量 文档类。它可以是任何变量。

我的文档类是:

package
{

    import flash.display.MovieClip

    public class Test extends MovieClip
    {
        public function Test()
        {
            trace(rect_mc.width1);
        }
    }
}

【问题讨论】:

  • 我之前的回答不好吗..?
  • 嗨,马蒂。如果我想要的只是访问 MovieClip 的属性,那么您的回答是正确的。但我需要访问在舞台上的影片剪辑的时间轴中声明的变量,并从文档类中访问它。无论如何,感谢您的宝贵时间。
  • 如果上一个问题是错误的,您应该考虑删除它。就目前而言,您有两个问题表面上看起来相同,但实际上其中一个问题包含另一个问题的所有内容以及一些额外的内容。 Stack Overflow 上很可能不再需要另一个问题。

标签: flash actionscript-3


【解决方案1】:

我绝对不建议在时间轴中使用变量,这是一种非常糟糕的做法。在您的情况下,您可以执行以下操作:

  1. 在rect_mc的时间轴中:(调用文档类中的函数init并传递宽度)

    MovieClip(父).init(sqaure_mc.width);

  2. 在您的文档类中:

    包装 {

        import flash.display.MovieClip;
    
        public class Test extends MovieClip
        {
            public function Test()
            {
    
            }
            public function init(width1:Number):void
            {
                trace(width1);
            }
        }
    

    }

【讨论】:

  • 感谢它解决了问题。非常感谢。
  • 投反对票,因为这不是“不好的做法”,而是“不适合您的项目”。由于我们特定的项目结构,我们中的一些人无法处理集中在一个文档类中的数十万个变量。
猜你喜欢
  • 2018-08-07
  • 1970-01-01
  • 1970-01-01
  • 2012-05-05
  • 1970-01-01
  • 1970-01-01
  • 2018-01-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多