FLASH中用AS做判断,怎么做都不正确!

来源:百度知道 编辑:UC知道 时间:2024/06/10 15:31:33
我是按着如下步骤做的,可就是不对!并附上源文件,希望高手给我看看,到底哪不对???
我用的版本是FLASH 8 专业版(好像是DEMO或英文版)
1,首先,新建一文件,设置背景为黑色,绘制如图图形,如图所示(我画了一条鱼的的说^_^),命名此层为“背景层”。

2,新建一层,命名为“输入文本框”,绘制一个文本框,添加输入文本,并将其变量名命名为“text”,如图所示。

3,新建一层,命名为“按钮层”,绘制一个按钮,上面输入文字“确认”,少作调整,如图所示;

4,选定按钮,按F9,添加如下AS代码:

on(release)//当鼠标在按钮上释放;
{
if(text=="fish")//如果变量的值是“fish”;
gotoAndStop(6);//影片跳转至第六帧;
else if(text=="FISH")//如果变量的值为“FISH”
{
gotoAndStop(6);//同样跳转至第六帧
}
else{
gotoAndStop(8);//以上两种情况都不满足的情况下,跳转至第八帧
}
};

5,在背景层的第六帧处插入关键帧,删除图形,输入文字“Good,you win!”。
6,在背景层的第八帧处插入关键帧,删除“Good,you win!”,输入“sorry,game over!”。
7,在按钮层的第六帧和第八帧处添加关键帧,绘制一按钮元件,输入文字“返回”,并选定此按钮元件,按F9打开动作面板,输入如下代码:

on(release)//当鼠标在按钮上释放;
{
gotoAndStop(1);//跳转至第一帧;
};
如图所示

8,在背景层的第一帧,加入AS:

stop();

做完以后生成SWF,怎么判断都算错,就是不对·
数字英文都判断为错!字体也改过,也没用!
请高手解答!
源文件在

首先,你把那个输入文本属性里面的变量名text去掉;然后,把输入文本的实例名命名为ttt,然后在按钮上加如下的代码:
on (release) {
if (this.ttt.text == "fish") {
//如果变量的值是“fish”;
_root.gotoAndStop(6);
} else if (this.ttt.text == "FISH") {
//如果变量的值为“FISH”
_root.gotoAndStop(6);
//同样跳转至第六帧
} else {
_root.gotoAndStop(8);
//以上两种情况都不满足的情况下,跳转至第八帧
}
//影片跳转至第六帧;
}

你看下 显示你直的动态文本框,有一个自动调整字体间距的,如果打勾了的话把勾去掉,我以前也碰到过这个,代码没问题,但是运行时出错、
2 ,看这个代码
{
if(text=="fish")//如果变量的值是“fish”;
gotoAndStop(6);//影片跳转至第六帧;
else if(text=="FISH")//如果变量的值为“FISH”
{
gotoAndStop(6);如果你没MC,你加个 _root.
gotoAndStop(6);

text是FLASH中的关键字

换下变量名 TEXT2什么的

把变量中的text删除掉,全部删除干净,然后在实例名中写text1,然后将代码中所有原来是text的写成text1.text,我很不喜欢现在还在用变量名的,而且8之后,已经不支持变量名了!还有,以后代码都写帧上,写元件和按钮上的时代已经过去了!