2006/05/30 | 滚动条的应用--文本滚动的实现。
类别(Flash课件设计) | 评论(0) | 阅读(479) | 发表于 12:21
Flash8 中,给文本框加入滚动效果是非常简单容易的。

首先,不写代码的办法:右键点击文本框(当然得是动态的),菜单中有一个"可滚动",选中它,测试一下,拨动鼠标中轮,文本就会动起来了。

代码操作:简单的文本滚动操作可以通过文本框的 scroll 属性来实现,
this.scroll +=1; 表示向下走动一行,this.scroll -= 1 表示向上走动。 写在相应的按钮中即可。

更复杂点的例子:打开 Flash 安装目录下的这个文件 D:\Program Files\Macromedia\Flash 8\Samples and Tutorials\Samples\ActionScript\LoadText\loadText.fla ,可以看到给文本框添加一个滚动条只需要四行代码。
但首先得从组件中拖一个 scrollBar 放到舞台上,然后删除,这样你当前的库中就会有一个 scrollbar 类,以后就不用写什么 import 语句来导入类了。
四行代码如下:
//创建滚动条的实例,名为 my_sb
this.createClassObject(mx.controls.UIScrollBar, "my_sb", 20);

//指定一个配套使用的文本框,括号内为舞台上文本框的实例名.
my_sb.setScrollTarget(my_txt);

//指定滚动条的大小, 这里的数字 16 似乎对滚动条没什么作用,换成50也可以,可能是因为标准的滚动条总是固定宽度的,所以这个属性在使用时被忽略了.
my_sb.setSize(16, my_txt._height);

//让滚动条移动到文本框的相关位置. 下面的代码表示让滚动条移动到文本框的右侧.
my_sb.move(my_txt._x + my_txt._width, my_txt._y);

文本的加载,采用类的方法同样也很简单,代码如下:
//首先写一个类的实例,这个类专用来加载文本.
var loadit_lv:LoadVars = new LoadVars();
//再对加载到的数据进行一下验证,验证通过后在指定的文本框中进行显示.
loadit_lv.onData = function(src:String) {
  if (src != undefinedc) {
    my_txt.text = src;
  } else {
    trace("Could not load text file.");
  }
};

//最后找一个合适的位置,比如按钮中写入加载命令,如果数据源没有问题的话,前面指定的文本框中就会显示对应的文本.
loadit_lv.load("http://www.helpexamples.com/flash/text/lorem.txt");

//加载本地相同目录下的文本可以这样写:

loadit_lv.load( "我的文本文件.txt" );
0

评论Comments