快速业务通道

Flash AS3.0实例教程之打字效果

作者 佚名技术 来源 服务器技术 浏览 发布时间 2012-07-07

本例为Flash AS3.0实例之打字效果,打字效果也是一个比较老的的效果,用来熟悉AS3.0的字符串和文本是最好的,希望能给朋友们带来帮助~~ 上一节: Flash AS3.0制作时钟的实例教程 AS3.0实例教程三-打字效果 打字效果也是一个比较老的的效果,没办法本人太笨,想来想去还是觉得用这个效果来熟悉AS3.0的字符串和文本是最好的。 在AS3.0中字符串和文本与AS2.0相比变化不是太大,在AS2.0入门教程中已对字符串和文本作了祥细介绍,这里就不再细说了。 创建文本框与以住有些不同,在AS3.0中创建文本格式如下:
var 文本名称:TextField = new TextField();
这样文本框就创建了,但在AS3.0中显示对象要用addChild()方法添加到显示列表中,才能在屏幕上看到它,因此就还得加上一句:
addChild(文本名称); 下面来看一个例子:创建一个文本,并让文本显示一些内容。 在帧动作中输入下面的代码:
var mytext: TextField = new TextField();
mytext.text = "我已经创一个文本了";
addChild(mytext);
测试影片,你会看到一个文本:"我已经创一个文本了"显示在屏幕上了。
文本框创建之后就可以设置其属性,调用其方法了。比如:appendText()方法,它将地在号中的字符串添加到文本的的结尾处,看下面的代码:
var mytext: TextField = new TextField();
mytext.width=300;
mytext.text = "我已经创一个文本了";
mytext.appendText(",我又加了一些内容");
addChild(mytext);
测试影片,看到的内容是:"我已经创一个文本了,我又加了一些内容"。你可真能干,你还能加些内容。这里我们加了一句:mytext.width=300;这设置了文本的宽度,以适应文本内容,使它能完全显示出来。 下面进入主题,实现打字效果: 新建flash文档,记住建AS3.0文档。 然后,导入一个打字声音素材(只有一声的那种,附件已提供)到库中,在库中右击声音元件,点“连接”(flash8,cs3)或“属性”(flash cs4),在“为ActionScript导出“前打钩,在”类“文本框中输入一个类名称,我的名称是:dzs,”确定“后会弹出一个对话框,再”确定 “。
下面打开帧动作面板写代码。
首先声明一个字符串对象,将要打出的文字包含进去:
var mystr:String = "在新春佳节来临之际,祝中国教程网的朋友们,新春快乐,万事如意,牛年牛气冲天!";
然后,声明一个变量,存储字符串的字符数,备用:
var strcd:Number = mystr.length;
接下来创建文本框,设置宽度,位置和缩放:
var mytextbox:TextField = new TextField();
mytextbox.width = 300;
mytextbox.x=120;
mytextbox.y=100;
mytextbox.wordWrap = true;//文本框向下扩展
创建一个文本格式对象,设置文本的格式:
var strformat:TextFormat = new TextFormat();
strformat.bold = true;
strformat.color = 0xffff00;
strformat.size = 20;
将文本添加到显示列表:
addChild(mytextbox);
下面创建一个函数将字符串内容添加到文本上,并调用打字声音,因为我们后面会用Timer类实例来调用函数,所以在函数的事作参数,我们用 event:TimerEvent,字符串的charAt(i)方法可以提取字符串中的第i个字符。文本框在有了内容后调用 setTextFormat()方法才会有作用,所以在这里才用它。
var i =0;
function xs(event:TimerEvent):void{
mytextbox.appendText(mystr.charAt(i));
i++;
mytextbox.setTextFormat(strformat);
新建一个dzs类,即我们导入的声音,它将继承Sound类的属性和方法。所以用play()播放它,这样每加一个字符就会出现一声打字声。
var sy:dzs = new dzs();
sy.play();
}
下面创建Timer类,设置每300毫秒调用一次xs函数,为文本添加一个字符,一共调用字符串的个数那么多次:
var jg:Timer = new Timer(300,strcd);
jg.addEventListener(TimerEvent.TIMER,xs);
jg.start();
测试影片,效果应该出来了。 关键词:

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站: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号