这是我的问题;
我想做一个测验,最后向一个人展示他/她选择特定大学课程的品质。测验将询问10个问题,每个问题有2个答案,点击答案后,将获得特定课程的分数。
例如,问题可能是“您想要使用计算机还是与人合作?”
在回答计算机时,将在Informatica,Designing and Editing课程中获得积分 在回答人们积分将获得在医生,社会工作者等课程(我只是在这里命名的东西)
我希望人们通过测验,回答问题,最后看看他们为每门课程赚了多少积分,看看哪些课程最适合他们的潜力。
现在代码可以很简单。我有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有点新意,所以我不知道该怎么做。当我尝试我的脚本时,它只是像电影剪辑一样播放。
有人可以告诉我,我做错了一件小事,或者我做错了吗?
答案 0 :(得分:1)
正如错误说明所示,您尝试将String
类型的内容分配给Number
类型的内容。您有正确的想法设置文本框以显示分数,但txt1.text
只接受String
。您可以使用toString()
转换数字,以便您的文本字段接受它:
txt1.text = option1.toString();
。
此外,要停止项目像电影剪辑一样播放,请在您希望应用程序等待的每个帧上添加命令stop();
(您已将其添加到第一帧,因此只需将其添加到秒)。