用纯AS写滚动条
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-08
//////定义下按钮 gundongtiao_mc.xiafangkuai_mc.onRollOver = function() { gundongtiao_mc.xiasanjiao_mc.shangse(jiluhuodongse); this.onPress = function() { this.onEnterFrame = function() { wenben_txt.scroll++; //使滑块儿移动到相应的位置。 gundongtiao_mc.huakuai_mc._y = ychushiweizhi+pingjunxiangsu*(wenben_txt.scroll-1); trace("滑块Y坐标="+gundongtiao_mc.huakuai_mc._y); }; }; this.onRelease = function() { delete this.onEnterFrame; }; this.onRollOut = function() { gundongtiao_mc.xiasanjiao_mc.shangse(jiluyuanshise); }; }; ///////////换用MOUSE对象的onMouseWheel方法结合侦听器实现滑块随鼠标滚球滚动 mouseListener = new Object(); Mouse.addListener(mouseListener); mouseListener.onMouseWheel = function(delta) { delta = 1; gundongtiao_mc.huakuai_mc._y = ychushiweizhi+pingjunxiangsu*(wenben_txt.scroll-1); }; ///////////滑块MC事件处理,当鼠标经过或按下时 gundongtiao_mc.huakuai_mc.onPress = function() { //开始拖动 this.startDrag(false, this._x, ychushiweizhi, this._x, Math.round(gundongtiao_mc.xiafangkuai_mc._y-gundongtiao_mc.xiafangkuai_mc._height/2-gundongtiao_mc.huakuai_mc._height)); //使文本随滑块滚动 this.onEnterFrame = function() { //在滚动过程中即时获得“滑块所处位置” var xianzaiweizhi = Math.floor(this._y); trace("现在位置="+xianzaiweizhi); //使文本随滚动条滚动,这里为什么要加1,可见scroll属性值应该是取正的,也就是说它会删除小数部分,而非采用四舍五入制? wenben_txt.scroll = (xianzaiweizhi-ychushiweizhi)*pingjunhangshu+1; trace("scroll值="+Math.floor((xianzaiweizhi-ychushiweizhi)*pingjunhangshu+1)); trace("初始位置="+ychushiweizhi); trace("现在位置="+xianzaiweizhi); }; }; //滑块MC事件处理,鼠标移出或释放时 gundongtiao_mc.huakuai_mc.onRollOut = gundongtiao_mc.huakuai_mc.onRelease=function () { // “滑块”停止拖动 this.stopDrag(); // 停止文本随滑块滚动事件 delete this.onEnterFrame; }; }; 下面是XML文档代码: <?xml version="1.0" encoding="UTF-8"?> <滚动条> <滚动条背景 背景色="#666666" 背景透明度="100" 边框色="#666666" 边框透明度="100" 边框粗细="1" 宽="20"/> <方块 背景色="#000000" 背景透明度="100" 边框色="#999999" 边框透明度="100" 边框粗细="0"/> <三角 原始色="#ffff00" 活动色="#ff0000" 透明度="100"/> <滑块 背景色="#000000" 背景透明度="100" 边框色="#999999" 边框透明度="100" 边框粗细="0"/> </滚动条> 说明: 由于我这个滚动条是完全由AS写成的,你只需要像在HTML网页中插入JS脚本一样,把上面的那段AS代码插入你的文本域所在贞,运行后,就会自动绘制滚动条并吸附到你的文本框右边了! 注意: ★你的文本域要命名为:wenben_txt。由于是练习,我没处理接口,不好意思:) ★你可以在XML中修改相应的参数。 ★这个滚动条基本具备了scrollbar组件的所有功能,包括精确定位,而且避免了在输入文本时容易产生的滑块跳动事件。当然,最最关键的是:我这个滚动条只有2K多! ★这个作品纯属自娱自乐,挑战自我。采用基于原型的AS1.0,代码写的比较乱,请前辈高手多多指教。 关键词: |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于用纯AS写滚动条的所有评论