0

这是我的问题;

我想做一个测验,最后向一个人展示他/她选择特定大学课程的品质。测验将提出 10 个问题,每个问题有 2 个答案,点击答案后,将获得特定课程的积分。

例如,问题可能是“您想与计算机一起工作,还是与人一起工作?”

回答计算机分数将在 Informatica、设计和编辑课程中获得 回答人分数将在医生、社会工作者等课程中获得(例如,我只是在这里命名)

我希望人们通过测验,回答问题,最后看看他们在每门课程中获得了多少分,看看哪些课程最适合他们的潜力。

现在代码可能很简单。我有 Flash CS5 并使用 Actionscript 3。在第一层的第一帧上,我有第一个问题和两个按钮,并且有以下代码:

stop();
btn1.addEventListener(MouseEvent.CLICK, release1);
btn2.addEventListener(MouseEvent.CLICK, release2);
var option1:Number = 0;
var option2:Number = 0;

function release1(){
    option1 += 1;
    gotoAndStop(2);
}

function release2(){
    option2 += 1;
    gotoAndStop(2);
}

在第二帧上,我有一个普通的文本,上面写着“结果是:”,然后是两个(暂时)动态文本框,我想在其中显示结果。

这就是问题所在,我不知道如何显示结果。我有这个作为代码:

txt1.text = option1;
txt2.text = option2;

但我得到了错误1067: Implicit coercion of a value of type Number to an unrelated type String.

...不幸的是,我对 CS5 和 Actionscript 3 有点陌生,所以我不知道该怎么做。当我尝试我的脚本时,它就像一个电影剪辑一样播放它。

有人能告诉我是我做错了一件小事,还是我在做这件事时完全走错了路?

4

1 回答 1

1

正如错误描述所说,您正在尝试将某些类型分配给String类型Number。您有正确的想法将文本框设置为显示分数,但txt1.text只会接受String. 您可以使用toString()来转换数字,以便您的文本字段接受它:

txt1.text = option1.toString();.

此外,要停止项目像电影剪辑一样播放stop();,请在您希望应用程序等待的每一帧上添加命令(您已经将它添加到第一帧,所以只需将其添加到第二帧)。

于 2013-02-28T16:49:15.293 回答