首 页免费资源建站技术软件下载精品淘吧客户留言
用户登陆 | 用户注册
您当前的位置:笃志小屋建站技术网页设计Flash → 文章内容
Flash MX 编程深层次应用-初级特效(2)
作者:佚名  来源:不详  发布时间:2007-9-11 0:27:07

2.1 文字特效(2)

    

2.文本格式对象

能对文本进行控制的还有文本格式对象。这个对象主要控制的是具体的文本格式,而文本框对象主要控制的是框的格式。文本格式对象的创建方法如下:

new TextFormat([font, [size, [color, [bold, [italic, [underline, [url, [target, [align, [leftMargin, [rightMargin, [indent, [leading]]]]]]]]]]]]])

上面的内容并不是每项都要一一设置的,如果不想设置该项而使用默认值的话,可以直接用逗号跳过,如果某项后面的内容全部都用默认值,则全部可以不写了。下面对这些参数做一些说明:

font

它用一个字符串的形式来描述字体名称,这个名称要与真实字体名称完全相同。对于中文字体,这项内容无法起作用,这也是为什么在图2-3的效果中,中文字体并没有被设置的原因。不知这是不是Flash MXBug

size

它是表示字体的点阵大小。这项值必须设置,否则字的尺寸将为0!字将无法显示。

color

字体的颜色值,一般来说是按0x######的方式进行书写的,比如红色是0xFF0000,黄色是0xFFFF00,默认是黑色。

bold

字体加粗,是一个布尔变量,为true时表示加粗,为false时表示不加粗,默认是false

Italic

字体变斜体,布尔变量,默认为false

underline

文字下划线,布尔变量,默认为false

url

超级链接。如果为空串,则不会有超级链接的功能。

target

目标窗口。这是设置有超级链接时,打开的窗口是自己(_self)、新窗口(_blank)、父亲窗口(_parent),或者是最顶层(_top)。默认值是_self

align

对齐方式。等于left,就是靠左对齐,等于right就是靠右对齐,等于center就是居中对齐。这个属性可以与文本框的autoSize属性进行联合设置。

leftMargin

左边界。它表示第一个文本字符离左边框的距离,用点数来表示,取值范围从0720

rightMargin

右边界。它表示最后的文本字符离右边框的距离,用点数表示,取值范围从0720

Indent

缩进方式。它表示从左边界到第一个字符缩进的整数点数值,取值从–720720

leading

行距。它表示每行字之前的间隔点数,取值范围从–360720

上面的这些参数都是文本格式的属性,都可以通过相应的方式来对它进行设置。当然了,字符的属性不止这些,还有几个很有用的属性函数:

TextFormat.tabStops

它是用来控制按Tab键时所能移动的空格数,默认值是4

TextFormat.blockIndent

定义整个文本块的左边缩进字数。块缩进应用于整个文本块,即文本的所有行。相反,普通缩进 (TextFormat.indent) 只影响各段的第一行。如果该属性为 null,则 TextFormat 对象没有指定块缩进。

TextFormat.bullet

用来控制文本作为列表形式的出现,它是一个布尔变量。如果为true,那么文本前面就会有一个项目符号。如果对一个文本同时使用了数种不同的文本格式,那么不管这个属性是否为true,都不显示项目号。

在实际使用过程中,可以先进行创建,然后再修改某一项或者数项的内容,最后用TextField.setTextFormat (textFormat)来实施相应的文本格式。

它的实施有三种方式:

TextField.setTextFormat (textFormat)
TextField.setTextFormat (index, textFormat)
TextField.setTextFormat (beginIndex, endIndex, textFormat)

这三种实质是差不多的,第一种已经在前面的程序中用到,第二种使用方法是让这个文本串的第“index”个字符使用这里定义的格式,第三种方法就是从“beginIndex”到“endIndex”的字符使用定义的格式。这里的indexbeginIndexendIndex取值范围从0TextField.length–1

在看过这么多属性之后,我们来看看它们对效果可以做哪些变化:

userFonts = TextField.getFontList();

userFonts.sort();

_root.createEmptyMovieClip("fontList", i);

for (i=0; i<8; i++) {

    _root.fontList.createTextField("userText"+i, i, 30, i*50, 300, 50);

    _root.fontList["userText"+i].text = userFonts[i];

    _root.fontList["userText"+i].border = true;

    _root.fontList["userText"+i].borderColor = 0xFF0000;

    _root.fontList["userText"+i].background = true;

    _root.fontList["userText"+i].backgroundColor = 0xFFFF00;

    _root.fontList["userText"+i]._height = 40;

    displayStyle = new TextFormat(userFonts[i], 18);

    _root.fontList["userText"+i].setTextFormat(1, 50, displayStyle);

    displayStyle_begin_char = new TextFormat(userFonts[i], 30);

    displayStyle_begin_char.align = "right";

    _root.fontList["userText"+i].setTextFormat(0, displayStyle_begin_char);

}

文本框:  
图2-5
上面的程序去掉了鼠标控制部分,仅显示字体控制部分。从图2-5中可以看出,每个字的间距拉大了,这是调整_height属性的结果;文本框的边框线变成了红色,这是通过设置borderColor属性的方式实现的;字体的第一个字符也做了放大,这是对第一个字符设置了不同的大小而产生出来的结果。通过这些设置,可以让程序完成一些以前无法完成的功能,比如文档的下标的显示。这个在以前根本无法解决,但现在可以通过设置相应字符的字体大小得到解决。虽然还没有达到像排版软件那么方便,但至少可以解决了。对于文档中的上标,虽然也可以采用这种方式,但实现起来比较麻烦,在这里就不讲解了,有兴趣的朋友可以自己试试。

 



2007-9-11 0:27:07免费资源duzhi.net

[ ] [返回上一页] [打 印]

【笃志小屋duzhi.net】

  技术文章导航
  技术文章排行
  精彩推荐
Copyright www.duzhi.net All Right Reserved.
设计制作:翼迅设计室 Equick Desgin Home 在线QQ:303471038
网络备案号:冀ICP备06008201号 站长信箱:webmaster#duzhi.net(将#换为@)
本站部分文章和图片来源于网络和内容提供伙伴,如果侵犯了您的权利,请留言告知,本站定会及时删除相关文件!