文本是as中经常用到的对象。下面分几方面详细说说有关文本的知识,作为对近段学习的一个总结。同时,希望对正在钻研as的朋友有所帮助。
第一部分文本的创建与格式的定义
一、有关文本的几个概念
1、文本字段:文本字段是舞台上的可见元素,要通过它向用户显示文本,可使用文本工具或使用 ActionScript 代码创建。简单地说,文本字段就是俗话说的“文字” 。
2、文本:是可在文本字段或用户界面组件中显示的一个或多个字符串系列。
文本与文本字段是两个既有联系又相互区别的两个重要概念。
1、区别:文本所包含的元素有文本框的边框、背景、在舞台上的位置、尺寸大小、里面文字的格式等等。在as中用TextField类的命令来定义。文本字段的元素包含文字的大小、颜色、对齐方式、字体等,在as中用TextFormat类命令来定义。
2、联系:实践中总是通过TextFormat定义好文本格式,然后把这种格式应用于TextField定义的文本。
文本格式设置可应用于文本字段,或文本字段中的某些字符。可应用于文本的一些文本格式设置选项示例有:对齐、缩进、粗体、颜色、字体大小、边距宽度、斜体和字母间距。
二、文本对象的类型type
文本对象共有三种类型:
1、静态文本:常用于显示程序运行过程中保持不变的文本。静态文本一般不需要用as控制。
2、动态文本("dynamic"):常用于在运行过程中内容需要变化的文本。用户不能编辑动态文本的内容。动态文本例如:游戏结束后,显示用户得分和评价的文本,是动态文本。因为每个用户在玩游戏的过程中,表现是不同的,所以评价也就不同。
3、输入文本("input"):与用户交互,由用户输入内容的文本。例如:登录各种网页之前输入的用户名和密码等等等。
对于用代码创建的文本my_txt,可以通过定义type来设置其类型:
my_txt.type="dynamic"-------定义为动态文本;
my_txt.type="input"-------把my_txt定义为输入文本。
输入文本又有两种类型,明码和密码。可以 通过设置password的布尔值完成。
my_txt.password=true;-------输入的文字显示为密码形式;
my_txt.password=false;------明码显示。
三、文本创建(TextField)
1、创建一个空白文本
文本类对象不属于*对象,想使用时需要先创建:
_root.creatTextField(参数1,参数2,参数3,参数4,参数5,参数6)
参数1是用字符串String表示,加双引号。用于在舞台上给创建的文本命名。一般用my_txt命名。
参数2是数值型变量,用于设置文本的深度。
参数3和4分别用于设置它在舞台上横坐标与纵坐标;
参数5和6分别用于设置它在舞台上的宽和高。
可见,在创建的同时,文本的实例名称、深度、位置、宽高都已经定义好了。
2、设置文本格式
/**********要定义文本的其它格式,需要先创建一个文本格式对象************/
my_fmt=new format();
定义文本格式对象时,可以不填参数。
四、具体定义已经创建的文本格式对象的各个属性
1、/*****设置边框*************/
my_fmt.border=true;//显示边框,为假时表示不显示边框
my_fmt.borderColor=0x******;//设置边框颜色
2、/********设置背景***********/
my_fmt.backbround=true;//显示背景,为假时表示不显示边框
my_fmt.backbroundColor=0x******;
3、/*******设置字体***********/
my_fmt.font="String"//用一个字符串串表示希望采用的字体。只能定义系统自带的字体。
4、/**************设置对齐方式***********/
my_fmt.align="String";
//String有几种形式
my_fmt.align="T"**********表示顶对齐,居中
my_fmt.align="B"**********表示底对齐,居中
my_fmt.align="L"**********表示居中,左对齐;
my_fmt.align="R"**********表示居中,右对齐;
my_fmt.align="TL"*********表示顶对齐,左对齐;
my_fmt.align="TR"*********表示顶对齐,右对齐;
my_fmt.align="BR"*********表示底对齐,右对齐;
规律:T是tip的缩写,表示“顶”;“L”是light的缩写,表示“左”;“B”是bottom的缩写,表示“底”。“R”是right的缩写,表示“右”。当对齐方式是一个大写字母表示时,默认情况下垂直位置是居中 ,字母表示水平位置。
5、设置文字颜色
my_fmt.color=0x******;
6、设置字号
my_fmt.size=Number; //设置想要的字号
五、文本调用文本格式
my_txt.setTextFormat(my_fmt)//文本里的文字设置为由my_fmt设置的文本字段格式
六、几种技巧
1、登录页面
登录页面通常有“用户名”name、“密码”(password)两个文本框和一个验证按钮组成。其代码一般是:
/*******用户名和密码都是输入文本框,分别命名为name_txt和password_txt
时间轴代码:
var str1:String="pp";var str2:String="1166";password_txt.password=true;
functionyanzheng(x,y){
if(x==str1$$y==str2){_root.gotoAndStop(2)}
}
跳转按钮代码:
go_btn.onRelease=function(){
name_txt.text=str1;
password_txt.text=str2
}
有了这样的代码,当点击go按钮时,如果用户名和密码是匹配的,那么就会跳转到应用页面,否则 就要求重新输入用户名和密码。
2、游戏中判断用户操作情况的动态文本的定义
在结束帧有个文本实例名为my_txt,代码如下:
my_txt.type="input";
jieshu_btn.onRelease=function(){
if(yonghudefei>10){my_txt.text="恭喜你,过关了!"};
if(yonghudefen<10){my_txt.text="遗憾,请继续努力!"}
}
第二部分文本的事件处理函数
文本的事件处理函数相对于其它对象而言比较简单,只须四种:
1、onChange:当文本的内容发生改变时调用。所谓文本内容发生改变,有两种情况:一是文本从没有焦点到有焦点,是个改变:二是对于已经存在的文本,进行剪切、删除等等操作时,也是改变。
2、onKillFocus:当文本失去焦点时调用:光标在文本框没有供输入的光标时,文本框没有焦点;
3、onSetFous:当文本获取焦点时调用:当文本框内有可供输入的光标是,文本框有焦点。
4、onScrollFocus:当多行文本的最顶端行的文本索引发生改变时调用 。
相关文章
- 11-18Flash AS教程:文本类对象知识总结