快速业务通道

复杂做法·计算器做法

作者 佚名技术 来源 服务器技术 浏览 发布时间 2012-07-10


以下是示范:
点击浏览该文件
示范源码:
点击浏览该文件

思路:
按钮1~9是数字,当按下按钮前,输入的是加、减、乘、除数,按下符号后所输入的是被加、被减、被乘、被除数
加、减、乘、除数存储在动态文本t1中
被加、被减、被乘、被除数存储在动态文本t2中
+-*/符号存储在动态文本fhpd中
判断是否按下+-*/从而决定是否输入的是被加、被减、被乘、被除数的变量存储在fdpd2中(做完才发现这样做复杂了……不过懒得改了,会的大家自己改吧HOHO)
另外,我写完了教程才发现……我忘了做0的按钮和小数点……不过道理是一样的,大家自己加吧

插入组建篇:
首先在场景上画出各个按钮,并且插入几个动态文本,实例名以及排列如下图所示:

按此在新窗口浏览图片
(图1)

AS编写篇:
首先,在第一帧加入AS,初始化变量:


a=0
t1=""
t2=""
t3=""
fhpd=1
数字的按钮1上面加上AS:


on (click) { //当单击按钮的时候
if (_root.fhpd != 0) { //如果主场景上fhpd这个动态文本的值不等于0,则执行以下AS
_root.t1 = _root.t1+1 //主场景上的t1这个动态文本的值为t1本身的值累加一个1(不是在本身上面加1,比如原来是9,按下1后则是91,而不是10)等下有解释。
_root.txt=_root.t1 //主场景上txt这个动态文本框的值等于t1这个动态文本框的值(就是加减乘除数),就是在最上面的最终答案显示区的那个显示现在所输入的数字,具体样子可以参考WINDOWS的计算器
} else { //否则(既fhpd的值等于0的时候),执行以下AS:
_root.t2 = _root.t2+1 //主场景上t2的值(就是被加减乘除数)
_root.txt=_root.t2 //主场景上txt这个动态文本框的值等于t2这个动态文本框的值(就是加减乘除数),就是在最上面的最终答案显示区的那个显示现在所输入的数字,具体样子可以参考WINDOWS的计算器
}
}
注意到AS中红色的“1”了吗?因为这段AS是写在按钮1上的,所以这里是让没按下一次1则t1的值为t1+1,比如t1现在的值是9,按下一次1后t1的值就是91了。
依此类推,按钮2的代码就是:


on (click) {
if (_root.fhpd != 0) {
_root.t1 = _root.t1+2
_root.txt=_root.t1
} else {
_root.t2 = _root.t2+2
_root.txt=_root.t2
}
}
明白了吗?每个数字按钮的AS其实只是改了红色标记处的数字而已,呵呵C/V吧~
好了,数字按钮的AS加完了,那么现在来加符号的AS:


on (click) { //当按下加号时执行以下AS
_root.fhpd=0 //主场景上fhpd的值为0,既按下运算符号后,输入加减乘除数的模式转换为被加减乘除数的模式
_root.fhpd2="+" //主场景上fhpd的值为字符+,这是为了让后面的等号去吧t1/t2/fhpd3个动态文本结合起来运算
}
呵呵,注意到上面红色的“+”了吗?是,是,聪明的你已经想到了,在其他的符号(-*/)上也是复制以上AS,直接更改+为-*/既可了,呵呵,聪明~

然后,就是重要角色-等号的AS了:


on (click) { //当点击等号这个按钮的时候,执行以下AS:
if (_root.fhpd2 == "+") { //如果fhpd2(既刚刚存储+-*/符号的那个动态文本)为字符串+,则执行以下AS:
_root.txt = Number(_root.t1)+Number(_root.t2); //主场景上txt这个动态文本的值(既最终输出答案的那个动态文本框)的值为动态文本框t1的值加上动态文本框t2的值,既在上面显示加法的最终答案
_root.fhpd="" //清空fhpd的值,为了下一次计算做准备
_root.t1="" //清空t1的值,为了下一次计算做准备
_root.t2="" //清空t2的值,为了下一次计算做准备
} else if (_root.fhpd2 == "-") {
_root.txt = Number(_root.t1)-Number(_root.t2);
_root.fhpd=""
_root.t1=""
_root.t2=""
} else if (_root.fhpd2 == "*") {
_root.txt = Number(_root.t1)*Number(_root.t2);
_root.fhpd=""

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号