AS3基础教程-第49课-简易计算器(2)

2025-05-09 21:18:04

1、将48.fla复制一份,重命名为49.fla,然后用flashCS6打开,按F9键打开动作面板,准备写代码

2、十个岳蘖氽颐按钮的实例名如下:btn0 btn1 btn2 btn3 btn4 btn5 btn6 btn7 btn8 bt荏鱿胫协n9我们在设定实例名时,特意使用了 btn+数码 的形式,这是为了方便书写代码而定的。有了这个设定,在添加单击命令的时候,可以使用for循环非常简洁的一次性添加十个单击命令。为了降低代码编写的工作量,我们可以使用代码片段面板,给btn0添加一次,然后将多余的注释都删掉,并将响应函数的名字重命名为一个有意义的,见下图,设为shuzidanji

AS3基础教程-第49课-简易计算器(2)

3、接下来,使用for循环操作,在上面代码的基础上,将事件源btn0修改一下,然后将上图的第2行代码包裹在for循环内部,然后在响应函数内部,加上一行trace命令,如下图:

AS3基础教程-第49课-简易计算器(2)

4、测试影片,代码无误,单击任意一个数字按钮时,都会输出其实例名。说明我们编写的代码已经实现了要求。

5、响应函数内部的代码,输出的实麻质跹礼例名是String类型的,可以利用String类的slice()方法,该方法有两个参数,分别定义字符串的初始和结尾位置,本方法的返回值就是截取始末之间的字符串。见下例,我只给了slice()方法一个参数,那么,返回值就是 从参数位置往后的所有字符。位置 是从0开始的,所以数码1位置对应的是字母b第3行代码表明,本方法不会修改原字符串的值

AS3基础教程-第49课-简易计算器(2)

6、回到我们的49.fla文件,我们将响应函数改成下图,测试影片,就发现,只输出按钮对应的数码了。但要注意,这个数码的类型仍然是String类型的,而不是数字。

AS3基础教程-第49课-简易计算器(2)

7、接下来,我们要将这个数字显示在舞台中,因为上节课已经布置好了,动态文本,我们直接调用它的text属性,即可进行显示,如下图所示:

AS3基础教程-第49课-简易计算器(2)

8、这样一来,单击任意一个数字按钮,都会在动态文本内显示出该按钮所对应的数字【其实是String类型】。但是,真正的情况是,观众可以连续单击多个按钮,从而实现 输入了多位数 的效果,然后,通过单击 四则运算 的运算符,再输入第二个数字。

9、故此,需要有两个数字。而且,每一个数字都是由多个数码拼合在一起构成。在此,只能使用字符串的特性,字符串可以直接拼接,见下图。使用+运算符,可以拼接字符串。但如果是两个数字,+的功能不再是拼接,而是四则运算中的加法运算了

AS3基础教程-第49课-简易计算器(2)

10、那么,我们就必须使用字符串,才可以实现拼接的功能。拼接完毕后,再转换成数字类型就行了。回到我们的49.fla文件:因为需要两个数字,故需两个栓疠瑕愤字符串,以及相应的两个数字类型。又因为需要将数字呈现在舞台上,故还需第三个字符串。最后,还需要将运算的结果呈现出来,故还需第三个数字类型。因此,需要事先定义三个字符串和三个数字,因为可能出现小数的情况,数字类型必须设为Number类型。代码如下

AS3基础教程-第49课-简易计算器(2)

11、现在,我们先不管 单击运算符之后的 第二个数字,我们只考虑第一个数字的情况。在响应函数内部,将代码修改为下图。

AS3基础教程-第49课-简易计算器(2)

12、测试影片,发现,已经可以拼接数字,并且可以直接在舞台上呈现出来,但是数字前面带着null,这是因为String类型的默认值就是null。我们在定义xianshistr的时候,只要同时赋初始值为空就可以修复该bug。然后,在响应函数内部,将字符串转换为数字类型,代码如下

AS3基础教程-第49课-简易计算器(2)

13、测试影片,我们的目的已经实现。但仅仅是num1而已,后续代码还需修改,下节课再详述

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢