快速业务通道

为Flash影片增加播放控制

作者 佚名技术 来源 服务器技术 浏览 发布时间 2012-07-15
环    5.把这个MC拖到"按钮"层,Ctrl+I打开实例面板,在名称栏输入:"kz"。接下来只要在"倒放"、"快退"、"快进"上添加转到相应帧的脚本即可。
按钮 "倒放" "快退" "快进"
脚本 on (release) {
  kz.gotoandplay(2);
}
on (release) {
 kz.gotoandplay(4);
}
on (release) {    kz.gotoandplay(6);
}
   最后还须注意的是在按下"倒放"、"快退"、"快进"这三个按钮后"kz"会陷入循环,这样再按其他按钮就失灵了,所以还要为"播放"、"暂停"、"停止"、"开始"、"结束"这些按钮添加一句脚本:"kz.stop();"以停止"kz"的循环。呵呵~~,如果你完成了上面的部分大功已经告成了一半了,先Ctrl+Enter调试一下吧!

   怎么样,上面的部分可以正常工作了吧?接下来这一部分我们来制作影片进度条和音量控制条


  这一部分我们来制作影片进度条和音量控制条

   先从简单的音量控制条部分开始做起,它需要一个可拖动的MC游标、一个graphics的背景条和一个包含它俩的MC。

   1.新建一个名为"音量游标"的MC,在默认层做一个如图4的矩形。然后再新建一个名为"音量背景条"的graphics,做个如图5的三角行。


   图4     图5
  
   2.新建一个名为"音量控制"的MC,把"音量背景条"拖到这一层,然后新建一个图层,再把"音量游标"这个MC拖到这一层,调整它们的位置(如图6)。 图6       完成上面的步骤后开始为"音量游标"这个MC添加脚本,在"音量游标"上按右键选ACTION,添加如下脚本:   onClipEvent (enterFrame) {
   mex= getProperty(this, _x); //取得X轴坐标值
   vol.setvolume(mex/0.59); //设定音量
  }
  onClipEvent (load) {
   vol= new Sound(); //设定实例
  }
  onClipEvent (mouseDown) {
   if (this.hitTest( _root._xmouse,_root._ymouse)) {
    startDrag (this, false, 0, 0, 59, 0);
   }
  }
  onClipEvent (mouseUp) {
   stopDrag ();
  }   需要解释的是:语句 vol.setvolume(mex/0.59);中的0.59是"音量背景条"的宽度减去"音量游标"的宽度(也就是"音量游标"可被拖动的长度)再除100所得(音量值为0--100),各位可以根据你做出来的具体情况计算。


   在"控制面板"这个MC上新建个图层名为"音量",把做好的"音量控制"MC拖到这一层,调整好他的位置(图7)。

  图7

   最后我们来制作影片进度条,它的制作与音量控制条的制作大同小异也是需要一个MC做为游标,一个graphics的背景条和一个包含它俩的MC。有了上面音量控制条的经验制作起来就很简单了。

   1.新建一个名为"影片游标"的MC,在默认层做一个如图8的图形。再新建一个名为"影片背景条"的graphics,做个如图9的长条矩形。


   图8   图9

   2.再新建一个名为"影片进度条"的MC,同样把"影片背景条"加在默认层。新建一个图层,把"影片游标"加到这一层,调整它们的位置(图10)。 图10   为"影片游标"添加如下脚本:

  onClipEvent (load) {
   drag = new Boolean();
   drag = false;
   cang = 495/_root._totalframes; // 495 为影片背景条减影片游标所得,你可根据自己情况计算得出
  }
  onClipEvent (mouseDown) {
   drag = true;
   if (this.hitTest(_root._xmouse, _root._ymouse)) {
    startDrag (this, false, 0, 0, 495, 0);
  }
  }
  onClipEvent (mouseUp) {
   drag = false;
   stopDrag ();
  }
  onClipEvent (enterFrame) {
   _root.all.allframe=_root._totalframes; //在动态文本框显示总帧数
   _root.all.nowframe=_root._currentframe; //在动态文本框显示当前帧
   if ((drag == true) && (this.hitTest(_root._xmouse, _root._ymou

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站: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号