第一篇,就从静态文本开始吧。静态文本是少数几个只能用Flash创作工具创建,而不能使用ActionScript以编程方式实例化的元素。 为了便于下面的说明,我们新建一个Flash文件,然后在舞台上创建一个静态文本,输入“测试文本”四字。
虽然我们不能实例化静态文本,但依然可以使用StaticText类来获取静态文本的内容,代码如下:
var tt:DisplayObject = this.getChildAt(0); //从显示列表中获取静态文本
var mytext:StaticText = StaticText(tt); //静态文本赋值
trace(mytext.text); //返回静态文本内容
最后输出结果:测试文本
然后我再给大家介绍一下TextSnapShot类,该类最大的作用是获取所加载的外部swf中,静态文本的内容(当然限于AS3脚本的SWF文件)。但我这里为了方便说明,还是用当前文件做示例,道理是一样的,代码也差不多的。
还是以上面的Flash文件为例,我们将代码修改一下,如下:
var mytext:TextSnapshot = this.textSnapshot;
trace(mytext.getText(0, this.textSnapshot.charCount));
返回结果同上。
下面我介绍一下该类的常用用法:
(1) charCount
核心用法。返回TextSnapshot对象中的字符数(也就是静态文本的总字数)。
(2) getText()
格式:getText(beginIndex:int, endIndex:int, includeLineEndings:Boolean = false):String
返回静态文本的内容。第一第二个参数指定范围,第三个参数一般都省略,会自动插换行符,很奇怪。
示例:mytext.getText(0,5);
(3) findText()
格式:findText(beginIndex:int, textToFind:String, caseSensitive:Boolean):int
从指定的范围搜索文本内容。第一个参数指定从哪里开始搜索,第二个参数是搜索内容,第三个参数是否忽略大小写。
示例:mytext.findText(0, “文本”, false);
|