教程学院
图像设计 多媒体类 机械制图 办公软件 操作系统 系统编程 网站编程 网页制作 数据库类 网络路由 网络工程 网络安全 考试认证
酷网学院
CAD
AutoCad Cam350 ProEngineer GCcam MATLAB Unigraphics SolidWorks CAXA Solid3000 Cimatron EdgeCAM
系统
安全 防火墙 病毒 WinXP Win2003 Vista
数据库
编程
网络
  网站导航: 库库中文网 · 多媒体类教程 · Flash教程 · FlashActionScript教程  

完成word地成批替换功能,as动态文字功能地类-StringUtil

教程推荐
『完成word地成批替换功能,as动态文字功能地类-StringUtil』如果文章有大量图片,显示会较慢,请等待图片下载完成
 
点击数: 更新时间:2005-7-11 
即上次的SimpleDateFormat(格式化日期类)后的又一个原创类,大家评评,继续努力,呵呵.
这是这几天弄得,现在是1.0版,StringUtil是字符串工具类,说是文字工具类也可以,现在主要可以实现这几个功能:
1.批量替换功能,用replace(str,str2)方法,可以将制定的文本中的str替换成str2,
2.将制定文本中的每一个字符,用getMovileClip()转化成mc,这样就可以利用控制mc来控制这些字符,简单做出文字特效.返回的是MovieClilp数组
3.将制定文本中的每一个字符,作为数组元素,返回数组 代码如下
/**
* Title: 字符串工具类
* Description: 工具类
* Company:
* Copyright
* @author wei386
* @version 1.0
*/ class StringUtil extends String {
private var stringObject:String;
private var mcarray:Array;
/**
* 设置字符串
* @param str 将要操作的字符串
* @return void
*/
function setText(str):Void
{
this.stringObject = str;
}
/**
* 得到当前StringUtil对象的字符串
* @param str 将要操作的字符串
* @return void
*/
function getText():String
{
return this.stringObject;
}
/**
* 替换字符串中的字符
* @param findstr 查找的字符串
* @param replstr 将要替换的字符串
* @return String
*/ function replace(findstr:String, replstr):String {
var strindex:Number = 0;
strindex = stringObject.indexOf(findstr);
for (;;) {
if (strindex == -1|laststrindex==-1) {
return this.stringObject;
}
// 取得开始字符
var startstr = this.stringObject.substring(0, strindex)
// 取得最后字符
var laststr = this.stringObject.substring(strindex+findstr.length, this.stringObject.length);
// 在最后字符中查找是否还有要替换的字符
var laststrindex = laststr.indexOf(findstr)
this.stringObject = startstr+replstr+laststr
// 设置开始字符截取位置,使每次只查找最后字符中是否有要替换的字符
strindex = strindex +laststrindex+replstr.length }
}
/**
* 返回字符串的字符数组,将字符串的每一个字符作为数据的元素返回
* @param
* @return Array
*/
function getChar():Array {
var strarray = new Array(stringObject.length);
for (var i = 0; i<strarray.length; i++) {
strarray[i] = stringObject.charAt(i);
}
return strarray;
}
/**
* 得到以字符串每一个字符为MovieClilp的对象,MovieClip数组
* @param strcolor 文字颜色
* @param strsize 文字大小
* @return Array
*/
function getMovieClip(strcolor:Number,strsize:Number):Array
{
//声明数组,存放mc对象
this.mcarray = new Array(stringObject.length);
for (var i = 0; i<mcarray.length; i++) {
//声明mc的名字
var mcarray_name:String = "StringUtil.mc_"+i
//在1000000层上创建一个空mc,名为"StringUtil.mc_"+i的格式
_level0.createEmptyMovieClip(mcarray_name,10000000+i)
//将这个产生的mc个i数组对象
mcarray[i]=_level0[mcarray_name]

//定义textfield的名字
var textfieldname = mcarray[i]._name;
//在mc上创建一个textfield
mcarray[i].createTextField(textfieldname,10000000+i,0,0,100,100);
// 设置textfield的字符
mcarray[i][textfieldname].text=stringObject.charAt(i);
// 设置文本不可选中
mcarray[i][textfieldname].selectable=false
var textformat:TextFormat = new TextFormat();
textformat.color=strcolor;
textformat.size=strsize;
mcarray[i][textfieldname].setTextFormat(textformat);

}
return mcarray;
}

}
使用方法:
新建一个fla文件,写上
var strutil = new StringUtil();
strutil.setText("闪吧我的家");//设置要操作的文字 替换字符串方法:
strutil.replace("我","我们");
就可以将strutil.setText()方法设置的字符串"闪吧我的家"中的"我"换成"我们" 将字符串换成MovieClip的方法:
var mcarray = strutil.getMovieClip(0x0099cc,50)
就可以将"闪吧我的家"中的每个字符转换成MC,0x0099cc是字的颜色,50是大小,返回的mcarray是数组
转换成mc后大小就可以用mcarray[i]._width,mcarray[i]._height控制了,就跟mc一样,然后就可以做自己的文字特效了. 这个类可以用来做as歌词用,只要每次setText()时,不同的字符串,也就是每句歌词,就可以了. 这只是1.0版,不是完整版,正在继续开发,2.0版会提供文字特效,会进一步对程序优化,提供设置文字格式的专门的方法,希望大家指正,呵呵

】【关闭窗口
  上一页:
  下一页:
FlashActionScript教程:相关文章
FlashActionScript教程点击榜
普通教程揭开AS脚本里面区分大小写之迷
普通教程AS计算方面地错误
普通教程Flash MX地AS绘图和时间控制
普通教程用flash动作脚本动态创建和控制
普通教程实际示例学用Flash MX增强地AS功
普通教程Flash 实用编制程序百例解读
普通教程for循环运用详细解说(c语言版)
普通教程运用flash判断你地e-mail合法性
普通教程AS绘制点不到地按钮
普通教程mx.utils 包 [4] 之ObjectCopy 
PHOTOSHOP - 基础教程 抠图专题 蒙版专题 3DsMax 基础 设计实例 Maya设计实例
3D设计教程
advertisement
关于站点 - 广告服务 - 联系我们 - 版权隐私 - 免责声明 - 合作伙伴 - 程序支持 - 网站地图 - 返回顶部
网站文本地图
版权所有:库库中文 2005-2007 欢迎各种媒体转载我们的原创作品[转载请注明出处]
copyright ? 2005-2008 www.QQGB.com online services. all rights reserved. 蜀ICP备05015578
Optimized for 1024x768 to Firefox,Opera and MS-IE6. Site powered by EQL. 电脑硬件 电脑知识 教程学习
红盾
热爱电脑,热爱生活
拥有电脑,拥有生命
让我们享受拥有电脑的时光