| Blog信息 |
|
blog名称:注册会计师(注会)练习软件 日志总数:398 评论数量:116 留言数量:27 访问次数:3285499 建立时间:2005年6月6日 |

| |
|
一些常用flash代码 软件技术
吕向阳 发表于 2005/10/30 23:38:52 |
| //***************关于进入帧
我们来说明一下这两句的含义,onClipEvent()是指当触发影片剪辑事件时,on,可以理解为“当……的时候”,Clip,影片,片段,剪辑,Event,事件,明白了吗?哈哈,我把它大卸八块,就差五马分尸了,以后看你还敢拦路否?enterFrame是MC的九大事件之一, enter.进入,Frame,桢,合起来是说在时间轴上每经过一桢就触发一次MC事件。第二句是个赋值语句,如x=10,是将等号右边的值10赋给等号左边的变量x,注意千万不能理解为等式,否则到后面你就晕了,呵呵。如果要比较两个数是否相等,要用比较运算符“==”,这是后话,暂且不提。我们先来看左边,_root.ball._x,这里面用到小点语法,前面已经讲过,_root是指舞台(主时间轴),ball是我们刚命名的元件小球,_root.ball是说舞台上的小球,这时小点表示层次关系,这里可以更简单的用this表示。第二个小点用来设置对象(_root.ball)的属性_x(横坐标)。“+=”是加法赋值符号,是将赋值号(=)左边的表达式和右边的表达式相加后的值赋给赋值号(=)左边,唉真罗嗦。写成这样大家可能就明白了_root.ball._x=_root.ball._x+5明白前面我的良苦用心了吧,这里你如果把“=”理解为等号就晕了,哈哈……, Cool!!!可是大家好象还发现一个问题,这个小球真不够意思,说走就走了,也不打个招呼,转眼就不见了,郁闷!你走到边停下来呀,可怎么让它停呢?有朋友说了,加个STOP!聪明,呵呵,你小球移动可以,但要有个条件,在这个条件范围内你可以移动,否则就要停下来。什么条件呢?记得刚才我让大家移动小球到舞台右边界看它的横坐标了吗,我们让小球到达右边界时停下来。OK,我们来添加条件语句。条件就是如果了,如果翻译成英文就是 if 了,否则写成英文就是 else 啊。这个语句就是如果舞台上的小球的横坐标值大于舞台右边界,那么舞台上的小球就停止移动;否则舞台上的小球每经过一桢向右平移5个像素。上面的AS语句就可以写成
onClipEvent(enterFrame){ if(_root.ball._x>430){ _root.ball.stop() }else{ _root.ball._x+=5 } }
//*****************************
5、 现在要添加控制影片的脚本。这次把脚本直接写在舞台上这些按钮的身上。选中播放按钮,按F9打开动作面板,输入:
on (release) { _root.mc.play(); }
如果要在按钮身上写脚本的话,必须使用on(事件){//脚本程序}的格式来写!上面的脚本作用就是:当你在这个按钮上按一下鼠标(release事件)的时候,就会执行下面的_root.mc.play();程序,它的意思是让舞台上的mc开始播放!6、同理:咱们选中舞台上的暂停按钮,在它上面输入:
on (release) { _root.mc.stop() }
然后依次在快退上输入:
on (release) { _root.mc.prevFrame(); //prevFrame表示回到动画的上一桢 }
在快进的按钮上输入:
on (release) { _root.mc.nextFrame(); }
在停止的按钮上输入:
on (release) { _root.mc.gotoAndStop(1); //跳到mc影片的第一桢,并停止播放! }
//*******************************拖动与碰到
on (press) {this.startDrag(true);}on (release) {this.stopDrag();}这是子弹的拖动,前面刚刚玩过哦,不作解释了。单击选中时间轴第一桢,在动作面板输入语句_root.onEnterFrame = function() {if (_root.blt.hitTest(_root.bar)) {text = "击中";} else {text = "未中";}}
mc.hitTest(target)mc.hitTest(x, y, shapeFlag)参数x 舞台上点击区域的 x 坐标。y 舞台上点击区域的 y 坐标。x 和 y 坐标都在全局坐标空间中定义。target 可能与由 mc 指定的实例交叉或重叠的点击区域的目标路径。target 参数通常表示一个按钮或文本输入字段。shapeFlag 一个布尔值,指定是计算指定实例的整个形状 (true) 还是仅计算边框(false)。只有当用 x 和 y 坐标参数标识点击区域时,才可以指定该参数。 |
|
|