【参加讨论】 文本工具(text tool) 是flash中一个常见的工具,自 macromedia 公司推出f lash mx 版本,text tool 的功能变得更为强大,下面我们就来系统地详细探讨一下文本工具。
首先打开flash mx,用鼠标点击工具栏中的
,或直接按键盘上的t键,就可选中文本工具,属性面板就会出现相应的文本工具的属性(如果看不到属性 面板,请选择菜单栏上的 window \ properties 选项),点击属性面板右下角的三角形符号,可以显示或隐藏某些功能。
点击属性面板上的text type menu(文本类型)的下拉箭头,可以看到文本工具共有三个不同的类型:static text (静态文本)、dynamic text (动态文本)、input text (输入文本)。当我们选择不同的类型时,文本工具的属性是不同的,具体区别请看后面的介绍。
下面我们先来简单的解释文本工具的一些基本属性(如果你已经有一定的基础,可以直接跳过),然后再详细的介绍不同类型的特殊属性,最后再通过一个例子来掌握文本工具最重要的两个属性:对象名和变量名。
一、文本工具的基本属性
这些文本工具的基本属性如字体、大小、颜色、字距、行距等读者只要稍微加以练习便可熟练掌握。
二、static text (静态文本)的特殊属性
static text (静态文本)主要是显示各项不能更改的信息。与 flash 5 相比,mx 增加了些新的功能,如文本可以垂直排列,甚至还可以旋转等,另外还可以给文本加上url链接,非常方便。
三、dynamic text (动态文本)的特殊属性
dynamic text (动态文本)主要是能够动态的显示最新信息。与flash 5 相比,mx 增加了对文本对象的命名。可别小看了这个小小的改变,有了这个功能,我们就可以象对影片操作一样设置其各种属性了。
四、input text (输入文本)的特殊属性
input text (输入文本)主要功能是让用户输入各种信息。与flash 5 相比,mx 新增加了对文本对象的命名。
五、对象名/变量名应用实例剖析
这是一个应用对象名和变量名的简单程序。用户填写自己的姓名、年龄及输入各个水果的购买数量,点击提交按钮,就会在右边的框内显示你刚刚填写的信息及你应付多少元。实例效果如下。
一、文本工具的基本属性
用鼠标点击工具栏中的
,或直接按键盘上的t键,就可选中文本工具,属性面板就会出现相应的文本工具的属性(如果看不到属性 面板,请选择菜单栏上的 window \ properties 选项),点击属性面板右下角的三角形符号,可以显示或隐藏某些功能。这些基本属性读者只要稍微加以练习便可掌握。
1.
font:选择字体
2.
point size:改变字体大小
3.
color box:改变字体颜色
4.
bold:设置字体是否为粗体
5.
italic:设置字体是否为斜体
6.
alignment buttons:设置段落格式,从左向右依次为左靠齐、居中、右靠齐、两端拉齐。
7.
format options:点击 format 按钮,打开 format options 窗口,从上到下依次为段落缩进、行间距、左边距、右边距。
8.
width and height :文本框的宽和高
9.
x and y position :文本框的x 轴和y 轴
二、static text (静态文本)的特殊属性
static text (静态文本)主要是显示各项不能更改的信息。与 flash 5 相比,mx 增加了些新的功能,如文本可以垂直排列,甚至还可以旋转等等,这下制作文本垂直排列时不用再象以前那样拼命的敲回车符了,只要轻点一下就可以实现了。
1.
change direction of text:改变文本排列顺序。分别为horizontal水平排列,vertical, left to right从左到右垂直排列, vertical, right to left从右到左垂直排列。
2.
rotation:文字旋转,仅在文本垂直排列时有效。
3.
character spacing:字符间距。
4.
character position:字符位置,分别为normal标准、superscript上标、subscript下标。
5.
selectable:文本可以被选择,只对水平排列的文本有效。选择的文本可以被拷贝。
6.
use device fonts:使用设计字体,只对水平排列的文本有效。这样可以减少文件的大小。
7.
url link:url链接,一般与target一起使用。这是一个很有用的功能,利用这个功能可以直接做一个文字按钮,链接到网页或信箱上去。 具体用法如下:
i.用鼠标选中需要链接的文字。如图(1)。

图(1)

图(2):链接到网址
图(3):链接到信箱
ii.在 url link 内输入链接的网址或信箱地址。如图(2)、(3) 。
iii.按下“ctrl+enter”到测试状态(或点击菜单栏control 下的 test movie)。将鼠标移到链接文字上,鼠标是不是变成了手指状,按下鼠标,怎么样,大家应该发现flash mx 已经自动的打开你所链接的网页了吧!
8.
target:以何种方式打开链接网页。做网页的人应该比较熟悉了。分别为_blank新建一个窗口, _parent父框架, _self相同框架,_top整页 。
三、dynamic text (动态文本)的特殊属性
dynamic text (动态文本)主要是能够动态的显示最新信息。与flash 5 相比,mx 增加了对文本对象的命名。可别小看了这个小小的改变,有了这个功能,我们就可以象对影片操作一样设置其各种属性了。
1.
instance name:对象名。具体应用请看后面的例子。
2.
line type:分别为single line单行、multiline 多行、multiline no wrap 没有限制的多行。
3.
selectable:与static text中selectable的意思相同,读者可参照前面的介绍。
4.
render text as html:用html来格式化文本。具体用法如下:
i. 运行 flash mx,建立新文件,选择工具栏的
在工作区建立一个文本输入框,此文本框中不需输入文字,在属性面板上选择 dynamic text , line type 选择 multiline ,选中
,在 var: 项里输入一个名称,这也是 actionscript 判断的名称,本例使用的名称是 a ;
ii.选择 timeline 的第一帧,点右键选择下拉菜单中的 actions 项弹出 actions 编辑面板。
iii.点击 actions 面板左上角的
加号按扭,在下拉菜单中选择 actions 项下的 variables 下的set variable,,如图(4)。
图(4)
iv.然后在对话框的 variable: 项中输入a,这个名称就是刚才赋予文本框的变量。然后在下面的 value :项中输入一串简单的html代码,如图(5)。

图(5)

图(6)
v. 按 ctrl+enter 测试效果,最终效果如图(6)。
注意:在用html代码格式化文本中,flash 只支持以下html标签:<a>,<b>,<font>,<font face="">, <font size=>,<i>,<p>,<u>,你可以实验一下使用其他标签的效果。
5.
show border around text:是否显示边框。这是一个比较实用的功能,如果你对边框要求不是很高的话。
6.
variable:变量名。主要在编程中应用,刚才的例子里就有一个应用。当然,你还可以再看后面的例子。
7.
edit character options:字符设置。就是对显示的字符进行某种限制。具体你可以看后面的例子。
8.
url link:与 static text 中的 url link 意思相同,可参照前面的介绍。
9.
target:与 static text 中的 target 意思相同,可参照前面的介绍。
四、input text (输入文本)的特殊属性
input text (输入文本)主要功能是让用户动态输入各种信息。与flash 5 相比,mx 新增加了对文本对象的命名。
1.
instance name:对象名。具体应用请看后面的例子。
2.
line type:分别为 single line 单行、multiline 多行、multiline no wrap 没有限制的多行、password 密码。
3.
render text as html:用html来格式化文本。与dynamic text中的意思相同,可参照前面的介绍。
4.
show border around text:是否显示边框。
5.
variable:变量名。具体应用请看后面的例子。
6.
edit character options:字符设置。与 dynamic text 中的意思相同,可参照前面的介绍。
7.
maximum characters allowed:允许输入的字符数。
五、对象名/变量名应用实例剖析
这是一个应用对象名和变量名的简单程序。用户填写自己的姓名、年龄及输入各个水果的购买数量,点击提交按钮,就会在右边的框内显示你刚刚填写的信息及你应付多少元。实例效果如下。
通过这个程序,大家可以看到新增的对象名的应用方法,了解对象名与变量名的区别,即对象名具有多个属性,而变量名只是是用来传递数值的,没有属性。
我们先来分析一下这个程序的结构:
首先,“个人信息”、“姓名:”、“年龄:”、“购物信息”、“水果名”、“单价(元/斤)”、“购买数量(斤)”、“西瓜”、“荔枝”、“苹果”以及“1”、“3.5”、“2.2”这几个数字是用来提示用户的,不会有任何变化,因此这几个是静态文本类型;
其次,在“姓名:”、“年龄:”旁边及“购买数量(斤)”下面的几个空文本框,我想也不必多说了,是用来输入文字的,因此这几个是输入文本类型;
最后,最右边的提交结果框是用来显示用户的输入信息,用户输入不同的信息,显示内容也随之而变,因此这是动态文本类型。
具体制作步骤如下:
静态文本制作
1. 运行flash mx,建立新文件,选择工具栏的
在工作区建立一个文本输入框,打开文 本工具属性面板,选择static text,格式为“宋体、大小为15,黑色,左对齐”,在文本框内输入“个人信息”;
2. 以同样的格式,做好“姓名:”、“年龄:”、“购物信息”、“水果名”、“单价(元/斤)”、“购买数量(斤)”、“西瓜”、“荔枝”、“苹果”、“1”、“3.5”、“2.2”这几个静态文本框,打开align 面板(选择菜单栏window下面的align),调整好其对应的位置;
输入文本框制作
3. 用鼠标在“姓名:”的右边点击2下,出现一新的文本框,在文 本工具属性面板选择input text,什么都不需要输入,对象名为 xingming,格式为“宋体、大小为15,黑色,左对齐”,line type选择single line,选中
以显示边框线,宽为104,高为19;
4. 同样的,在“年龄:”的右边建立一个输入文本框,对象名为 nianling 。这里需要注意的是,这个文本框是输入年龄的,而年龄只能由数字组成,且一般情况下为两位数字,因此需要对可输入的字符作某种限制,即只能输入两位数字。点击
,弹出character options面板,选择only下的numerals(0-9)。在maximum characters框内输入“2”;
5. 在“购买数量(斤)”的下面,与“西瓜”相平行的位置新建一输入文本框,宽为55,高为22,格式为“宋体、大小为15,黑色,左对齐”,line type选择single line,选中
,
栏内输入:xigua,请注意是在变量名的框内输入,而不是在对象名的框内输入,我们等会要在编程中利用这个变量进行运算。点击
,弹出character options面板,选择only 下的numerals (0-9),因单价有可能为小数,因此在add these characters 栏内输入小数点“.” ,如图(9)中的红框所示。
图(9)
6. 以同样的格式,在“购买数量(斤)”的下面,与“荔枝”相平行的位置新建一输入文本框,
栏内输入:lizhi,与“苹果”相平行的位置新建一输入文本框,
栏内输入:pingguo, 至此,输入文本全部制作完成,我们来制作动态文本。
7. 用鼠标在工作区的右边部分点击2下,出现一新的文本框,在文 本工具属性面板选择 dynamic text , 输入“提交结果:”,对象名为 jieguo,格式为“宋体、大小为15,黑色,左对齐”,line type 选择multiline,这样可以多行显示,选中
,宽为155,高为280;
制作提交按钮
8. 点击菜单栏 window下的components 选项,显示组件面板。从组件面板上拖一个pushbutton 提交按钮到工作区的左下角。在组件属性面板上的lable 标签栏输入“提交”,这是按钮上显示的文字,在clickhandler 项里输入一个名称,这是actionscript 判断的名称,本例使用的名称是 onclick ,具体如图(10);

图(10)
至此,所有对象都制作完了,我们利用align面板将它们一一调整好位置,下面就进入最为关键的编程部分了。
代码编程
9.选择 timeline 的第一帧,点右键选择下拉菜单中的 actions 项弹出 actions 编辑面板,点击右边的
,选择expert mode专家模式,输入:
function onclick() {
count=1*xigua+3.5*lizhi+2.2*pingguo
jieguo.text="你的姓名:"+xingming.text+"\r你的年龄:"+nianling.text+"\r\r你购买了:"+"\r西瓜"+xigua+"斤"+"\r荔枝"+lizhi+"斤"+"\r苹果"+pingguo+"斤"+"\r\r"+"你应付:"+count+"元"
}
代码解释
第一句:这是一个用户自定义的函数,函数名就是我们刚刚在按钮组件中赋予 click handler 的名字onclick。
第二句:
count: 我们自定义的一个变量名,用来接受数值。这样可以减少第三句代码的长度,便于程序的理解
1*xigua:1为西瓜的单价,xigua 为西瓜输入文本框的变量名,它的值就是用户输入的购买西瓜的数量,两者相乘就是购买西瓜的价钱 于此类推,这句代码的意思就是count这个变量值等于各个水果价钱的和,也就是等于总共应付多少元
第三句:
jieguo.text:jieguo是动态文本框的对象名, 而text是对象的其中一个属性,文本的意思,jieguo.text和起来就是jieguo对象的文本内容。 "你的姓名:" :表示这是个字符串+ : 连接字符串
xingming.text:xingming就是姓名输入文本框的对象名,text是对象的其中一个属性,xingming.text和起来就是xingming对象的文本内容 \r : 这是编程语言中的一个特殊语句,换行的意思
xigua:西瓜输入文本框的变量名,它的值就是用户输入的购买西瓜的数量
count: 就是第二句中的变量值
于此类推,这句代码的意思就是jieguo这个动态文本框的内容由以下内容构成:
你的姓名:xingming对象的文本内容
你的年龄:nianling对象的文本内容
空行
空行
你购买了:
西瓜 变量xigua的值
荔枝 变量lizhi的值
苹果 变量pingguo的值
空行
空行
你应付:变量count的值
10.按下“ctrl+enter”进行测试。 原文件下载学习