【问题标题】:Flash Actionscript 3 Simple CounterFlash Actionscript 3 简单计数器
【发布时间】:2014-06-12 15:20:07
【问题描述】:

我正在努力在文本字段中制作一个简单的 flash actionscript 3 计数器,该计数器从我的动画开始处 0 开始,并随着每一帧而增加。

这将一直计数,直到它到达时间轴上的特定帧,我希望数字开始加倍而不是向上计数。

我似乎只能找到 AS2 示例,我不太确定如何让双重部分正常工作。有谁能帮帮我吗?

提前致谢!

【问题讨论】:

    标签: actionscript-3 flash counter


    【解决方案1】:

    我猜您正在使用 Flash CS,并且您将代码直接放在帧上,所以第一帧上的这个 sn-p 应该可以工作。

    假设您的舞台上有一个 TextField,实例名称为 counterTextField,并且您希望计数在第 100 帧开始加倍。

    import flash.events.Event;
    
    var count:int = 0;
    var limit:int = 100;
    var increase:int = 1;
    stage.addEventListener(Event.ENTER_FRAME, countFrames);
    
    function countFrames(e:Event):void
    {
        if (count <= limit)
        {
             count += increase;
        }
        else
        {
             count *= 2;
        }
        counterTextField.text = String(count);
    }
    

    【讨论】:

    • 同样在 as3 中,您不能再将代码直接放在对象上,而是可以将代码放在 .as 文件中,或者如果您想使用时间轴,请右键单击帧并使用操作面板。
    • 感谢您的帮助。我添加了一个实例名称为 counterTextField 的动态文本框,并将动作脚本放置在时间轴上。由于某种原因,我收到此错误场景 1,图层“SCORE”,第 1 帧,第 18 行 1067:将 int 类型的值隐式强制转换为不相关的 String 类型。
    • 是的,我编辑了最后一行,忘记将 int 转换为字符串:) counterTextField.text = String(count);
    • 嗯,我不再收到任何错误,但计时器只是循环闪烁 3 和 33
    • 这很奇怪,你能在里面放一个痕迹看看新文本是什么吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-05
    • 2011-04-29
    • 1970-01-01
    • 2013-05-19
    • 2014-10-24
    相关资源
    最近更新 更多