论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Flash教程
Tag:flash cs,flash 8,鼠绘,as,手绘,工具,文字,loading,入门,初学,mc,影片剪辑,声音,mtv,游戏,引导,遮罩,菜单,补间,广告条,时钟,视频教程

Flash文本框局部文本样式的控制

文章类别:Flash | 发表日期:2008-9-21 20:09:46

  前几天写了一篇关于《Flash文本框文本样式的控制》后,有个网友提到:假如要设置文本框的局部文本样式该如何写代码?于是我查了一下Flash帮助文档,为大家写了这篇小实例!先看看效果:

/UploadTeach/200710/20071015124010161.swf

Flash AS提供这样一个类:Selection类,通过它的两个方法(getBeginIndex(),getEndIndex()),我们可以获取我们想要的文本的起始位置!使用方法如下:
startIndex = Selection.getBeginIndex();//选择文本的起点
endIndex = Selection.getEndIndex();//选择文本的终点

获得起始位置之后,再使用setTextFormat()方法将样式附加到指定文本。
_root.style_txt.setTextFormat(startIndex, endIndex, Style)

实例具体代码如下:
var Style = new TextFormat();//定义一个文本格式
var startIndex:Number, endIndex:Number;//选择字符的起始位置
style_txt.borderColor = 0xdddddd;//style_txt文本框的边框样式
size_txt.borderColor = 0xdddddd;//size_txt文本框的边框样式
style_txt.htmlText = "<a href=’http://www.blue-sun.cn’>蓝光博客 BlueShine</a>"
+"<br>http://www.blue-sun.cn<br>当你选择部分文本后,修改下列样式,"+
"文本框中被选择的文本样式是不是发生了变化!?";
//
this.onEnterFrame = function() {
    if (Selection.getFocus() == String(style_txt)) {//判定文本框是否获得焦点
        startIndex = Selection.getBeginIndex();//选择文本的起点
        endIndex = Selection.getEndIndex();//选择文本的终点
    }
};
//修改字体大小
size_txt.onChanged = function() {
    Style=style_txt.getTextFormat(startIndex, endIndex);//获得改变之前的文本样式
    Style.size = this.text;//设置属性值
    _root.style_txt.setTextFormat(startIndex, endIndex, Style);//将样式附加到文本
};
//修改文本颜色
var listenOBJ_Com = new Object();
listenOBJ_Com.change = function() {
    Style=style_txt.getTextFormat(startIndex, endIndex);
    Style.color = color_Com.text;
    _root.style_txt.setTextFormat(startIndex, endIndex, Style);
};
color_Com.addEventListener("change", listenOBJ_Com);
//修改字体粗细
b_bt.onRelease = function() {
    Style=style_txt.getTextFormat(startIndex, endIndex);
    Style.bold = !Style.bold;
    _root.style_txt.setTextFormat(startIndex, endIndex, Style);    
}
//切换斜体
i_bt.onRelease = function() {
    Style=style_txt.getTextFormat(startIndex, endIndex);
    Style.italic = !Style.italic;
    _root.style_txt.setTextFormat(startIndex, endIndex, Style);    
}
//文本左对齐
l_bt.onRelease = function() {
    Style=style_txt.getTextFormat(startIndex, endIndex);
    Style.align ="left";
    _root.style_txt.setTextFormat(startIndex, endIndex, Style);    
}
//文本居中
c_bt.onRelease = function() {
    Style=style_txt.getTextFormat(startIndex, endIndex);
    Style.align ="center";
    _root.style_txt.setTextFormat(startIndex, endIndex, Style);    
}
//文本右对齐
r_bt.onRelease = function() {
    Style=style_txt.getTextFormat(startIndex, endIndex);
    Style.align ="right";
    _root.style_txt.setTextFormat(startIndex, endIndex, Style);    
}
说明:Selection.getFocus() 的作用是得到获得焦点的文本框名称!从而可以据此判定文本框是否获得焦点!
视频教程列表
文章教程搜索
 
Flash推荐教程
Flash热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058