flash - AS2:设置新属性时的调用方法

标签 flash actionscript actionscript-2

我有一个dynamic Class,我想做的是在运行时每次将属性附加到类时都调用一个方法。

例如:

dynamic class Example
{

    public function Example()
    {
        trace("New instance created");
    }

    public function setter(name:String, value:String):Void
    {
        trace("Property '"+name+"' created with value '"+value+"'");
    }
}

然后从时间轴向示例添加新属性时:
Example.newProperty = "some value";

我要它跟踪:

使用值“一些值”创建的属性“newProperty”

我完全意识到,通过使用如下函数来设置属性可以做到这一点:
public function setter(name:String, value:String):Void
{
    this[name] = "some value";
    trace("Property '"+name+"' created with value '"+value+"'");
}

并这样称呼它:
Example.setter("newProperty", "some value");

但是,我希望通过常规的.dot运算符添加属性时自动触发此方法,而不必显式调用函数。

这可能吗?

最佳答案

因为是AS2,所以是的,您的类必须实现__resolve(x)方法。但是,我认为这是一个非常有问题的设计决策。接受键和值的函数对我来说看起来要好得多,最后,它的代码更少。

关于flash - AS2:设置新属性时的调用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9178988/

相关文章:

html - 仅当嵌入HTML时,才能使用Google chrome从Flash电影中加载youtube视频

flash - 为什么我不能在 Flash CS4 的回调方法中访问组合框?

flash - Flash/ActionScript 3 中 is 运算符的性能?

apache-flex - 如何仅在标签中的特定单词上显示工具提示?

flash - 创建多语言 ActionScript 3.0 网站

javascript - 如何使 flash cs3、actionscript 将事件发送到 javascript?

flash - 在指定位置启动声音的问题(AS2)

actionscript-3 - 有没有办法在不使用 Flash IDE 的情况下从 FLA 文件构建 Flash 9 SWF?

c++ - 将拆分的 TCP 数据包与闪存套接字重新组合

css - CSS 和 Uploadify 的 hideButton 的奇怪故障