使用AS3在Flash中捕获文本从一个动态文本字段到另一个动态文本字段

时间:2014-03-22 19:20:31

标签: xml actionscript-3 flash

基本上我在框架上有一个动态文本字段(txtarea),里面的文本由XML文件插入。此框架还有两个按钮,允许您在xml文件中的数据之间轻弹。我还有一个按钮(btn)转到第10帧,它有另一个动态文本字段(txtarea2)。

我想要发生的是当用户在txtarea中拥有所需的信息时,他们按下btn并且该信息显示在txtarea2中。所以基本上镜像了以前的动态文本字段。

这是我的代码,但它不会返回其他动态文本字段中的任何内容。

(我已经删除了正常工作的XML代码)

stop();
btn.addEventListener(MouseEvent.CLICK, frame5);
function frame5(evt: MouseEvent): void {
gotoAndStop(5);
}

this.storedtxt = txtarea.text

txtarea2.text = this.storedtxt;

我也试过

this.storedtxt = txtarea.text;
txtarea2.text = txtarea.text;

这是什么代码?

由于

2 个答案:

答案 0 :(得分:0)

txtarea是否存在于目标框架的时间轴中?如果不是那么

this.storedtxt = txtarea.text

没有得到任何东西,因为txtarea不存在。在大多数情况下,舞台显示对象在时间轴中不再出现时会被清除。

当你这样做时

function frame5

您可以将txtarea.txt的值存储在frame5函数的变量中,以便稍后在第5帧中使用。

尝试使用trace语句来检查txtarea.txt的值。

答案 1 :(得分:0)

  

这是什么代码?

正确的方法 - 在离开当前帧之前存储数据。从您当前的逻辑,您可以立即存储文本字段内容用户访问框架。如果你的字段没有文字,你将有空字符串。

正确的方式:

function frame5(evt: MouseEvent): void {
    //Store text before user leaves current frame
    this.storedtxt = txtarea.text
    gotoAndStop(5);
}

第5帧代码(我假设你在第5帧中有txtarea2 TextArea):

txtarea2.text = this.storedtxt;