AS3基础教程-第19课-加法运算小程序(上)
1、打开flashCS6软件,新建AS3的flash文档,所有的属性保持默认即可
2、说明程序作用的文本:
使用文本工具,属性面板内设置为静态文本,写上四个字,告知读者本程序是一个加法运算的小程序

3、布置两个动态文本+一个输入文本:
需要由flash程序随机生成两个数字,用于加法运算。还需要用户手动输入一个数字,用于判断正误。
故此,两个数字需设置为动态文本,并设置实例名分别为
num1_txt和num2_txt
如下图所示,务必将“自动调整字距”前面的勾去掉!
若设置为“消除锯齿”,必须嵌入字体,嵌入数字的即可。
图中输入了数字233,这是为了设置文本的各项属性,调整满意之后,请将输入的数字233都删掉。
用户输入的数字,需要设置为输入文本,实例名设为input_txt

4、设置运算符号:
使用静态文本,插入一个加号、一个等号

5、设置程序反馈的文本:
插入一个动态文本,用于显示各种信息。设置其实例名为note_txt
如下图所示,在属性面板内设置为“使用设备字体”,这个选项无需嵌入字体。

6、布置按钮:
插入一个新的图层,然后从公用库内拖出一个按钮到舞台上,并设置实例名为
add_btn

1、我们先使用代码片段面板,给按钮添加单击操作,详情请看本教程的11课。
然后将flash自动生成的注释都删掉

2、接下来,我们在动作面板内,将上述代码进行扩充。
首先,我们在已经有的代码的第一行的字母a之前,敲两下回车,然后再写代码。

3、首先需要定义两个变量,用于存储两个随机数字。舞台上虽然有这两个文本,但是,在AS3编程时,访问的是它们的text属性,这个属性的类型是字符串类型,并不是数字类型,故此,为了编程的方便起见,事先设置两个数字类型的变量,比较好。代码如下:
var num1:uint
var num2:uint
然后再新增一个变量,用于存储加法运算的结果,乃是数字类型的。将其放在上面两行代码的后面,代码如下:
var asw:uint
4、接下来,对两个数字进行赋值,代码如下:
num1=Math.random()*100
num2=Math.random()*100
说明:
<1>这里使用了随机数函数Math.random()
0≤ 其返回值 <1
这里为了生成一个0到99的随机数,在其后面乘以了100,即:
0≤ 乘以100之后的返回值 <100
又因为将数字类型设置了uint,会保证其值一定是整数。
<2>当输入了Math.r的时候,flashCS6会出现代码提示,见下图,此时正好跳转到了Math.random()上,直接敲回车,flash就会自动将代码补齐!【注意:代码只补齐到小括号的前半段,后半段需要我们手动输入】
<3>既然新增的这两行,赋值号的右边一模一样,为何不写成下面的样子:
num1=num2=Math.random()*100
这样写导致的后果是,num1和num2的值肯定是一样的。
而原代码的写法,由于是分开赋值,所以,num1和num2都是随机数,绝大多数情况下是不同的。大家可以使用trace函数验证

5、给asw赋值,就是num1和num2相加的结果,代码如下:
asw=num1+num2
至此,完整的代码如下图:

6、接下来,需要将舞台上两个动态文本显示出num1和num2的数值,我们在上图所示的第9行代码那里,加入下面的代码:
num1_txt.text=String(num1)
num2_txt.text=String(num2)
本处用到了强制转换函数
7、最后,在按钮单击函数内部,加入下面的代码:
if(uint(input_txt.text)==asw){
note_txt.text="恭喜你,答对了"
}
else{
note_txt.text="很遗憾,答错了"
}
说明:
使用强制转换函数,将输入文本的类型转换为uint数字类型,用于判断是否与运算的结果相同。然后根据判断的结果,给出相应的反馈信息。
8、本例的完整代码,见下图
