当前位置:软件学习 > Flash >>

一个FLASH的按钮触发鼠标效果

首先,感谢各位对这个节目的支持."Step by step和Aero-lk学原码"会一直做下去.

  今天,我们来学一个按钮触发鼠标定位的效果,这个效果还是很有实用价值的.在很多站点也使用了这种效果,像http://www02.so-net.ne.jp/'kaz5150/fe/就运用了这个效果,我们先来看看成品:

   

  鼠标选择字体04b时,跟随会自动选定blueidea.com,怎么样?是不是有点用?呵呵.

  好,我们一起开始做吧.

  第一步:建立一个名为left的MC,这个MC是做鼠标跟随的左边半个.变化效果可以自行创新,我做了三层,实现了一个喷射的效果.这就不细讲了.(大家要有更好的做法一定要共享啊,呵呵)把这个MC拖放到Scene里,并把InstanceName设为leftBracket.

  第二步:同样建立一个名为right的MC,和上面一步一样,InstanceName设为rightBracket.

  第三步:我们建立一个要被选定的部分,我选择了在FW的做成的图片(避免有字体问题):www.blueidea.com,也把他拖放到Scene中.

  第四步:点选left,调出Action浮动面板,开始写代码

onClipEvent (load) {
var seekTargX = _root._xmouse-6;//这里的6是设定位置,数越大离鼠标越远
var seekTargY = _root._ymouse-_height/2;
}//当电影编辑显示,初始化
onClipEvent (enterFrame) {
if (_root.overButton == 0) {
seekTargX = _root._xmouse-6;
seekTargY = _root._ymouse-_height/2;
}//当所有帧执行,重新赋值
dX = seekTargX-_x;
_x += dX/4;
dY = seekTargY-_y;
_y += dY/4;
updateAfterEvent();
}

  第五步:同样的。

onClipEvent (load) {
seekTargX = _root._xmouse+6;
seekTargY = _root._ymouse-_height/2;
}
onClipEvent (enterFrame) {
if (_root.overButton == 0) {
seekTargX = _root._xmouse+6;
seekTargY = _root._ymouse-_height/2;
}
dX = seekTargX-_x;
_x += dX/4;
dY = seekTargY-_y;
_y += dY/4;
updateAfterEvent();
}


  第六步:做个按钮,设定按钮AS

on (rollOver) {
overButton = 1;
leftBracket.seekTargX = 178;
leftBracket.seekTargY = 39;
rightBracket.seekTargX = 252;
rightBracket.seekTargY = 39;//设定鼠标选定范围
}
on (rollOut) {
overButton = 0;
}

  是不是感到很难确定这个范围?好办,我们选择view/rulers,然后拖出定位线,如图所示:

   

  第七步,在Scene里新建一层两帧,分别写上overButton = 0;和stop();设定初值.

  完成了.不难吧,效果还不错.这次节目就到这里.谢谢收看.原码领取


【责任编辑:星河 频道主编:赵家雄


CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,