快速业务通道

Flash制作精美动态网页 六

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

在“drag target”所在的影帧上点击右键,选“property(属性)”,再在“动作(action)”对话框内选择“开始拖曳(start drag)”动作,对象(target)选“target”,并勾选“锁定中心点(lock center)”(如图22)。



  Ctrl+Enter,预览一下,你会发现movie clip“drag”的中心会一直紧紧的跟着鼠标的指针尖端移动,真的是形影不离啊!这时候还得回到scene窗口,右键点击“drag target”选“Property”,在“Color Effect”里将其Alpha值设置为“0”,这样“drag target”就被隐形了。

  说了半天,究竟这“drag”和获取mouse坐标有何用?其实,因为“drag”紧跟着鼠标,所以“drag”的中心坐标就是鼠标指针所在点的坐标,这样我们就可以通过“获得属性(getproperty)命令”获取“drag”的坐标位置,间接的得知鼠标得位置了。具体的做法是:为了图层布置简洁方便,我们新起一个叫“command”的空白图层,专门用于写命令。在command图层的第一帧,在“property(属性)”中设置“动作(action)”如下:图23



  来逐句逐句分析一下:

Set Variable: "drag_x" = getproperty("drag",_x)

Set Variable: "drag_y" = getproperty("drag",_y)

  这两句的意思是:设置一个变量(Variable),名字为"drag_x"或"drag_y",变量等于目标“drag”的x坐标值或y坐标值。这样,通过 “drag”, 我们得到了鼠标指针的坐标。

  紧接着就可以设置控制“main”运动的函数了。这是关键中的关键!我们在上面的命令的基础上再加上几句,大家请看图24。



  增加的语句如下:

  Set Variable: "main_x" = getproperty("main",_x) //获取“main”的x坐标值
  Set Variable: "main_new" = main_x+(drag_x-380)*(-0.1) //算出button新的x坐标值

  这还不行,由于现在movie只有一帧,上述命令只会运行一次,“main”变换了一次位置以后,就不动了。所以我们要在各层上都加上第二帧,加个“action(动作)“:“go to and play frame 1”。这样,movie反复的播放这两帧,各项命令也反复被执行,“main”的位置也不? 随着鼠标的变化而变化,动起来了!

  试试看!“main”随着鼠标的运动,也跟着动起来了!不错吧!

  但是很快你会发现,如果鼠标一直被你放在movie中心的一侧的话,“main”很快跑出了画面,不能还原了!这怎么行呢?所以还要再加些命令,使“main”循环运动,loop个不停……命令如下,附加注释:

If (main_x$#@62;=1100) //如果新的x坐标大于1100
Set Variable: "main_new" = main_new-760 //令新的x坐标向左移动760像素
End If
If (main_x$#@60;=-340) //如果新的x坐标小于340
Set Variable: "main_new" = main_new+760 //令新的x坐标向右移动760像素
End If
Set Property ("main", X Position) = main_new //将新的x坐标赋予“main”

  到这里,你应该知道为什么要用三条button条做成一个长长的家伙了吧?这是为了避免“main”移动时尽头暴露在scene上。因此,我们用了个小小的障眼法,当中间的button条向右移动时,左边的button条紧跟着移动过来填补留下的空间。当左边的button条的左边缘也移动到scene的时候,即x坐标为760+340=1100的时候,就用命令使“button group”向右移动760像素,返回原位。由于单一个button条长760像素,因此虽然向右移动760像素,scene里的画面看上去却没有任何变化,而实际上我们刚才看见的左边button条已经被调换成中间的那一个了。处理向右运动情况的方法类似,大家动动脑筋吧!

  Ctrl+enter,呵呵,这回“main”无论怎么跑,都不会消失啦!到了这里,最重要最核心核心的第五步完成了!别忘了还没做mouse over效果啊! 关键词:网页

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