快速业务通道

用纯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 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

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号