`
wangangie17
  • 浏览: 41830 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

完全独立制作的文本滚动条

阅读更多

 ★在看代码之前,请先看看下面的说明,这会对理解代码有很大的帮助:
[url=http://www.huoshan.org/shiyan/gundongtiao/gundongtiao.htm]
http://www.huoshan.org/shiyan/gundongtiao/gundongtiao.htm
[/url]
★下面是滚动条中所有的代码:
//%%%%%%%%%%%%%%%%接口变量%%%%%%%%%%%%//
//接收父剪辑文本域名字
var wenben_txt = _parent.wenben_txt;
//---------滚动初始化---------//
//此变量是滑块的初始高度,现在设置为最高,也就占满上、下按钮之间的空间
//此变量将在外部文本载入完成,滚动条高度设定的时候得到应用(第32行)
var chushigaodu = Math.floor(xia_btn._y-shang_btn._y-shang_btn._height);
//初始化滑块Y坐标,并记录
var ychushiweizhi = huakuai_mc._y=Math.round(shang_btn._y+shang_btn._height);
//小滑块不可见,上下按钮不可用
huakuai_mc._visible = false;
shang_btn.enabled = false;
xia_btn.enabled = false;
//%%%%%%%%%%%%%%%%滚动代码%%%%%%%%%%%%%%%%%%//
//////////为父剪辑的文字域注册侦听器,以侦听在文字域产生变化时,也就是在文本被载入进来时,执行下面的代码。这样就不用担心代码执行顺序问题!
var zhentingqi = new Object();
wenben_txt.addListener(zhentingqi);
//当文字域载入完成时,为什么触发onScroller事件,而不是onChange事件?
zhentingqi.onScroller = function() {
       trace("----------------------");
       //在_root中的动态文本框中,显示总行数和当前行
       _parent.zonghangshu_var = "总行数:"+wenben_txt.maxscroll;
       _parent.dangqianhang_var = "当前行:"+wenben_txt.scroll;
       //判断滑块儿是否显示,并根据文本内容多少定义滑块高度
       if (wenben_txt.maxscroll != 1) {
              //小滑块可见,上下按钮可用
              huakuai_mc._visible = true;
              shang_btn.enabled = true;
              xia_btn.enabled = true;
              //定义一个高度因子,此因子随加载文本的增多,将无限趋向于1。
              var gaoduyinzi = 1-(wenben_txt.maxscroll-2)/wenben_txt.maxscroll;
              //根据高度因子初始化滑块的高度
              huakuai_mc._height = Math.floor(chushigaodu*Math.pow(gaoduyinzi, 1/5));
              //记录外部文本载入完成后,滑块的高度
              trace("滑块高="+huakuai_mc._height);
       }
       //滑块滚动的总象素数                              
       var zongxiangsu = xia_btn._y-shang_btn._y-shang_btn._height-huakuai_mc._height;
       //定义平均象素,每一行所包含的像素数,即文本域每滚动一行,滑块需要移动的象素数。              
       var pingjunxiangsu = zongxiangsu/(wenben_txt.maxscroll-1);
       //定义平均行数,每一像素包含的行数,即滑块每移动一象素,文本域在理论上应当滚动的行数(尽管非整数行在视觉上没有反映)。
★这个滚动条是我在没有参考任何其它滚动条代码,也没看过滚动条标准算法的情况下,按着自己的想象,完全独立制作完成的,所以算法可能有点奇怪,而且存在一个小BUG,就是在极少数情况下,拖动滑块到到最下方,文本域却只能显示倒数第二行,最后一行只能通过点击下按钮来显示,比如,请在上面那个示例的输入文本域中输入文本至总行数为197行,你就会发现拖动滑块无法显示最后一行。对于这个BUG,我一直很困惑,希望高手能多多指教!这也是我发这篇帖子的最重要原因!
请用FLASH8打开。
math.pow(a,b);就是计算a的b次方。所以,如果b是分数,就是开a的b次方了。比如math.pow(4,1/2);就是4开平方,得到2。
下面解释一下楼上问到的两段代码:
本文转自:http://www.5uflash.com/flashjiaocheng/Flashyingyongkaifa/1089.html
分享到:
评论

相关推荐

    sxw flash cms

    5.说明性文本加入滚动条,字数超过显示区域也可以显示。 6.留言模块提交项目可在后台自由设置,留言模块提交项目由原来的固定三项.改为可以自由设置的四项。 SXW Flash CMS为全智能化网站管理系统;前台所有可视项...

    零基础学HTML CSS源代码

    设置滚动条.html 设置滚动条。 框架实例手把手.html 演示框架实例手把手。 第10章(源代码\第10章) 示例描述:本章演示移动字体和图片用法。 移动的基本语法.html 移动的基本语法。 文字的移动方向....

    软件界面设计工具_3款合集

    可使用标准Windows元素创建图形用户界面(GUI)屏幕,包括框架窗口、会话、菜单、工具栏、标签、按钮、复选框、单选按钮、滚动条、滑动调节框、微调框、组合框、树列表、列表框、编辑框以及静态文本等。 通过现有...

    C++Builder精彩编程实例集锦的源代码(1,2,3部分).rar

    实例035 如何在列表框中增加水平滚动条 实例036 如何在列表框中同时显示图像和文字 实例037 如何设置属性表组件标签图像 实例038 如何控制Memo组件的文字边界 实例039 如何使用代码控制文字滚动 实例040 如何...

    VC++常用功能实例

    ◆如何在多文档MFC程序中制作独立的File|New菜单?◆ 33 ◆如何检测视是否处于分割状态?◆ 34 ◆如何使程序保持极小状态?◆ 34 ◆如何确定当前进程实例是否为唯一实例?◆ 35 ◆如何向一个文档附加多个视?◆ 35 ...

    VC++常用的共用函数100多页

    ◆如何在多文档MFC程序中制作独立的File|New菜单?◆ 33 ◆如何检测视是否处于分割状态?◆ 34 ◆如何使程序保持极小状态?◆ 34 ◆如何确定当前进程实例是否为唯一实例?◆ 35 ◆如何向一个文档附加多个视?◆ 35 ...

    flash shiti

    Flash 模拟试题及答案(一) 1.Loading应该放在影片的什麽位置? A. 影片不能有Loading B....C....D....2.Flash中设置属性的命令是?...A....B....C....D....A....B....C....D....A....B....C....D....A....B....C....D....A....B....C....D....A....B....C....D....A....B....C....D....A....B....C....D....A....

    C++Builder精彩编程实例集锦的源代码前3部分.rar

    实例035 如何在列表框中增加水平滚动条 实例036 如何在列表框中同时显示图像和文字 实例037 如何设置属性表组件标签图像 实例038 如何控制Memo组件的文字边界 实例039 如何使用代码控制文字滚动 实例040 如何...

    C++Builder精彩编程实例集锦的源代码后3部分.rar

    实例035 如何在列表框中增加水平滚动条 实例036 如何在列表框中同时显示图像和文字 实例037 如何设置属性表组件标签图像 实例038 如何控制Memo组件的文字边界 实例039 如何使用代码控制文字滚动 实例040 如何...

    第一部分 界面设计

    实例035 如何在列表框中增加水平滚动条 实例036 如何在列表框中同时显示图像和文字 实例037 如何设置属性表组件标签图像 实例038 如何控制Memo组件的文字边界 实例039 如何使用代码控制文字滚动 实例040 如何...

    GUI Design Studio 3.0

    可使用标准Windows元素创建图形用户界面(GUI)屏幕,包括框架窗口、会话、菜单、工具栏、标签、按钮、复选框、单选按钮、滚动条、滑动调节框、微调框、组合框、树列表、列表框、编辑框以及静态文本等。 通过现有...

    易语言程序免安装版下载

    修改高级表格支持库,允许“复制选定文本()”“剪切选定文本()”在“允许选择块”属性为假时复制剪切当前单元格中的文本。 18. 修改扩展界面支持库三,为“高级选择夹”增加“不点燃选中子夹”属性。 19. 修改XML...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字 Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象,...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字 Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象,...

    PowerPoint 2000 Excel 2000 Word 2000 Windows 2000操作系统 计算机基础知识 计算机考试题库

    4.熟悉Word的功能和特点、运行环境及其启动和退出,掌握Word的窗口组成:标题栏、菜单栏、常用工具栏、文本区、滚动条、状态栏、格式工具栏、按钮。 5.掌握文档的基本操作:创建一个新文档,保存文档,打开文档,...

    最好的asp CMS系统科讯CMSV7.0全功能SQL商业版,KesionCMS V7.0最新商业全能版-免费下载

    向上滚动置入:向上滚动显示广告位中的所有正常广告条 向左滚动置入:向左滚动显示广告位中的所有正常广告条 弹出多个窗口:页面打开时同时弹出多个窗口,每个窗口内显示一个广告条,弹出数量跟该广告位中的正常...

    EditPlus_3.40.683 中文版

    * 拆分窗格具有独立滚动条 * 替换对话框“列表”按钮 * “标志列表”命令 (“搜索”->“标志”) * 目录窗口的“关联菜单”命令 * “同步滚动”菜单选项 (“窗口”->“其它”) * 在“在文件中查找”对话框的“在新...

    VBA常用技巧

    技巧122 在框架中使用滚动条 12 技巧123 使用多页控件 12 技巧124 标签文字垂直居中对齐 12 技巧125 使用TabStrip控件 12 技巧126 显示GIF动画图片 12 技巧127 播放Flash文件 12 技巧128 在工作表中添加窗体控件 12 ...

    VBA编程技巧大全

    技巧122 在框架中使用滚动条 289 技巧123 使用多页控件 291 技巧124 标签文字垂直居中对齐 293 技巧125 使用TabStrip控件 295 技巧126 显示GIF动画图片 297 技巧127 播放Flash文件 300 技巧128 在工作表中添加窗体...

    PHP开发实战1200例源码

    实例161 文本域的滚动条 192 3.3 下拉列表的应用 193 实例162 省市级联动菜单 193 实例163 省市县级联动菜单 194 实例164 应用下拉列表选择所要联机的网站 196 实例165 可输入字符的下拉菜单 197 实例166 设置下拉...

Global site tag (gtag.js) - Google Analytics