flash解构涂料中的应用七:文本工具
时间:2012-12-18 14:13来源:卓想空间http://www.zxgzs.com 作者:QQ:610929375 点击: 次
文字工具,在涂料中的应用是一个标准的文本工具,更是一个输入文本框,占用了整个画布范围内,被格式化
的文本,可以根据用户输入的重量,大小和颜色。 它可以间隔打字机风格的换行符和键盘空间。
这个应用程序的所有其他部分,设置工具的第一步是添加的ActionScript工具的按钮设置我们_root.isactive
变量的值,以反映文本工具。
接下来,我们需要设置一些基本的参数,我们使用一个控制器,绘图影片剪辑中的所有对象的影片剪辑内。
我们使用的onClipEvent(负载)处理程序应该已经存在定义其他值时,电影负载:
_root.textexists=false; _root.base.fontsizebox=15; _root.base.fontbold=false;
_root.base.fontitalic=false;
首先,我们设置一个变量确定如果文本已经被输入的主画布上。 电影负载,没有文字,所以变量textexists
= FALSE。 这将有助于确定我们的文本字段的状态,我们将切换从动态输入回来,该文本是不会受到影响的绘
画运动的文字工具时,是不活跃的。
其他变量代表用户的输入,从控制面板字体的重量和体积。 此设置的默认字体大小为15,使确定的变量代表
粗体和斜体字体粗细都是假的。
在该影片剪辑的onClipEvent(enterFrame事件),我们需要创建一个新的TextFormat功能。 的TextFormat是
一个功能,我们还没有涉及到 - 你猜对了 - 让我们控制格式的文本。 新的颜色()和setRGB相似,我们先
定义一个新的TextFormat的名字,然后设置文本格式的值,然后将它应用到现有的文本字段使用
setTextFormat:
myTextFormat = new TextFormat(); myTextFormat.font="Verdana"
myTextFormat.size=_root.base.fontsizebox; myTextFormat.bold=_root.base.fontbold;
myTextFormat.italic=_root.base.fontitalic; _root.drawing.textname.setTextFormat(myTextFormat);
在这种情况下,大小,粗体和斜体的参数分配给变量从控制面板,并动态更新,每次帧加载。 ,他们正在然
后应用到一个文本字段名为textname。
现在照顾的格式选项,所有我们需要做的是确定什么时候是可编辑的文本框单击(在这部电影中剪辑的
onClipEvent(mousedown的))时,它不是。
任何工具以外的文字工具处于活动状态时,文本字段的类型应该是动态的,文字不可选。 否则任何用户尝试
画或绘制形状时,他们最终会选择文本。
只有文字工具处于活动状态时,开关输入文本字段的类型,使用户可以输入新的文本或编辑现有文本:
if(_root.textexists==true&&_root.isactive!="texttool"){ _root.drawing.textname.type="dynamic";
_root.drawing.textname.selectable=false; } if
(_root.textexists==true&&_root.isactive=="texttool"&&_root.base.helptabs._visible==false){
_root.drawing.textname.type="input"; _root.drawing.textname.selectable=true; }
第一条语句进行检查,看看文本存在的文本工具,如果不积极。 如果是真实的,那么在文本字段仍然是动态
的,其可选属性为false。 第二个语句检查,看看文字而存在,并,如果文字工具处于活动状态。 如果两者
都为true,则文本字段的类型为输入和文字是可选的,因此用户可以编辑。
虽然它似乎在相反的顺序,我们需要做的最后一件事是创建的文本字段中的onClipEvent(mouseUp事件)的处
理程序,以及一旦光标点击文本工具在画布上,而设置为true的价值textexists有效:
if(_root.isactive=="texttool"){ if(_root.textexists==false){ _root.drawing.createTextField
("textname",0,35,25,635,500); _root.drawing.textname.variable="typedtext";
_root.drawing.textname.textColor=_root.txtcolor; _root.drawing.textname.type="input";
_root.drawing.textname.border=false; _root.drawing.textname.multiline=true;
_root.drawing.textname.wordWrap=true; _root.drawing.textname.text="Your default message.”
_root.textexists=true; } }
使用createTextField参数定义为一个字符串的名称的文本字段,该层,起始x位置,y位置,宽度和高度。 矿
来支付我的整个可行的画布区域。
(责任编辑:卓想空间http://www.zxgzs.com)
上一篇:flash动画创作主体的审美创造
下一篇:无处不在和强大的3D发生器