╋艺 镇╋╋网站网络|程序语言|Flash╋┣◇FLASH交流 → FLASHMX2004制作缓冲滚动条效果


  共有14402人关注过本帖树形打印复制链接

主题:FLASHMX2004制作缓冲滚动条效果

美女呀,离线,留言给我吧!
admin
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 司令 亲民勋章
等级:管理员 帖子:3027 积分:27521 威望:0 精华:7 注册:2003/12/30 16:34:32
FLASHMX2004制作缓冲滚动条效果  发帖心情 Post By:2008/5/7 13:15:37 [只看该作者]

简介:

滚动条的制作有很多种方法,本教程通过一个缓冲公式制作出了带缓冲效果的滚动条,简单实用……

一、效果预览

FLASHMX2004制作缓冲滚动条效果

二、建立对象

FLASHMX2004制作缓冲滚动条效果

三、填写AS

FLASHMX2004制作缓冲滚动条效果

四、AS详解

第1帧:

show_scroll.onPress=function(){scroll_lock="no"}

//滚动条被按下 锁被打开

show_scroll.onRelease=function(){scroll_lock="yes"}

//滚动条被放松 锁被关闭

show_scrollbg.onPress=function(){scroll_lock="no"}

//滚动条空白区域被点击 锁被打开

show_scrollbg.onMouseUp=function(){scroll_lock="yes"}

//鼠标提升 锁被关闭

//这里是有原因的 当你鼠标按下 放开的时候不是在滚动条背景 scrollbg的时候

// 锁就永远不会关闭,整个图片将一直随着鼠标缓缓飘逸于你的显示器上第2帧:

if (scroll_lock=="no") {

show_scroll._y+=(_ymouse-show_scroll._y-15)/2

}

show_image._y+=(-(show_image._height-300)*(show_scroll._y*300/270)/300-show_image._y)/20详细解释:

show_scroll._y+=(_ymouse-show_scroll._y-15)/2:其中的“15”代表滚动条长度的一半,“2”代表滚动条缓冲常数,注意:这个常数不要设置太大,以免鼠标下来了,滚动条还在上面。

show_image._y+=(-(show_image._height-300)*(show_scroll._y/270)-show_image._y)/20:show_image._y+=(-(show_image._height-[滚动显示区域的高度])*(show_scroll._y/[滚动显示区域的高度-滚动条高度])-show_image._y)/[被滚动影片缓冲常数,这里不要设置太大 以免 鼠标下来了 滚动条还在上面]

下面先讲按住滚动条滚动。当没上锁的时候,也就是滚动条scroll或者背景scrollbg被按下的时候,show_scroll._y也就是滚动条的垂直位置,缓冲移动到鼠标当前位置的上15个象素,然后被滚动影片以缓冲移动到一个指定位置。

主要的地方来了: show_image._height-300 意思就是 _ymouse-show_scroll._y-[滚动条长度的一半],show_image被移动的最大范围。然后下面就是要让 show_image滚动到的位置所占总滚动位置的比例,和滚动条移动到的y占总移动范围的比例一样。所以有了 show_image+=([极限位置]-show_image._y)/20这个是缓冲的算法,向极限每次循环以当前距离的1/20靠近。

[极限位置] =-(show_image._height-300)*(show_scroll._y/270),(show_scroll._y/270)是滚动条的 _y 占滚动范围的比例

然后用 show_image._height-300 乘 (show_scroll._y/270) 就得到 show_image,占总滚动比例与滚动条占滚动总范围的比例一样。_y的值前面加"-"号是要达到滚动条向下,被滚动mc向上的效果。然后当你点击滚动条,可移动范围空白区域的时候,锁打开,得到鼠标当前位置,滚动条马上缓冲移动到这个位置,然后,相当于拖动滚动条移动一样,向下执行步骤。

图例:

FLASHMX2004制作缓冲滚动条效果



  
平面设计、网站建设、三维动画、视频制作 联系QQ:114103945  回到顶部