如何从下一帧 AS3 中引用对象
Posted
技术标签:
【中文标题】如何从下一帧 AS3 中引用对象【英文标题】:How to refer to object from next frame AS3 【发布时间】:2013-01-03 09:16:58 【问题描述】:我在使用 Flash CS4 时遇到问题。 我在第一帧上有 TextFields,在第二帧上有其他 TextFields,等等。 在第一帧中,我将 TextField 放入数字中,然后按计算按钮计算所有 TextField 的值。 而且我有菜单来浏览标签(框架)。
所以...当我输入数字并单击“计算”时,我在第一帧的 TextFields 获得值,但是当我切换到下一个选项卡(帧)时,我看到清晰的 TextFields 和输出错误(错误 #1009)。
我知道,原因是从下一帧向 TextFields 添加第一帧中的值,但我不知道如何修复它。
请帮忙。
【问题讨论】:
一个简单的“破解”方法是将文本字段从计算帧一直复制到引用它们的第一帧。这些字段可以在舞台边界之外(不可见),但由于它们存在于 actionscript 调用它们的先前帧中,因此它们应该在那里,有望修复 1009 错误。stage.invalidate()
和 RENDER
event 可能也值得一看
非常感谢。您的提示非常有用,可以帮助我解决问题。
【参考方案1】:
单击下一个选项卡时,将文本字段的值存储在变量中。
如果在时间轴上编写 ActionScript,代码如下:
// On frame 1:
// Create the variable to store the textfield value
textfieldValue:String = "";
function tabClicked(event:MouseEvent):void
// Store the value of myTextField
textfieldValue = myTextField.text;
// On frame 2
// Populate the new instance of myTextField with the stored value
myTextfield.text = textfieldValue;
【讨论】:
以上是关于如何从下一帧 AS3 中引用对象的主要内容,如果未能解决你的问题,请参考以下文章
ActionScript 3 AS3 gotoAndStop下一帧有循环
Flash AS3 - 当数组已经调用时,下一步我应该怎么做?