应用思考-教育技术论坛

标题: AS3元素处理:静态文本 [打印本页]

作者: etthink    时间: 2013-4-20 14:13
标题: AS3元素处理:静态文本
第一篇,就从静态文本开始吧。静态文本是少数几个只能用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);






欢迎光临 应用思考-教育技术论坛 (http://etthink.com/) Powered by Discuz! X3.4