1.调整文本框大小以适应内容
解决方法:
设置autoSize属性可自动根据内容调整文本框大小。可用值为RIGHT, LEFT, CENTER,和NONE,都是flash.text.TextFieldAutoSize 类常量。
默认值为NONE,表示不自动调整大小。 另外,wordWrap属性设置为true,则当内容超出范围时自动换行。貌似必须先设置autoSize才生效。
Example:
2.滚动文本
解决方法:
水平滚动的单位为像素(最小值为0),垂直滚动的单位为行(最小值为1)。设置WheelEnabled=false可以禁用滚轮滚动行。 scrollH -- 水平滚动的像素
maxScrollH -- 文本的最大水平像素值,只读
scrollV -- 垂直滚动的行数
maxScrollV -- 文本的最大行数,只读
bottomScrollV -- 当前最后一行是第几行(在整个行数里),只读
Example:
3.响应滚动事件
解决方法:
当水平或垂直滚动产生时会触发scroll事件,flash.events.Event类的SCROLL常量即代表该事件。
Example:
4.格式化文本框文本
解决方法:
有三种方式对文本进行格式化:HTML标签格式化、使用TextFormat对象、CSS样式
* HTML标签格式化示例: textBox.htmlText = "<b>粗体文本</b><u>下划线文本</u>";
* TextFormat对象示例:(注意:只对setTextFormat之前的代码有效)
var textFormat:TextFormat = new TextFormat();
textFormat.color = 0xFF0000;
textFormat.htmlText = "有效";
//也可以对部分文字进行格式化,例如:textBox.setTextFormat(textFormat,3,textBox.text.length);
textBox.setTextFormat(textFormat); textFormat.htmlText = "无效";
* CSS样式示例:(注意:只对CSS定义之后的代码有效)
var css:StyleSheet = new StyleSheet();
var styleObj:Object = {color:"#FF0000"};
css.setStyle(".stdStyle",styleObj);
textBox.styleSheet = css;
textBox.htmlText = "不潮不用花钱";
this.addChild(textBox);
Example:
5.格式化用户输入的文本
解决方法:
应用TextFormat对象到文本框的defaultTextFormat属性上
Example:
6.设置文本字体
解决方法:
使用HTML的<font>标签,或者设置TextFormat对象的font属性,或者通过CSS的font-family属性
修改字体有多种方法,如果使用HTML的话可通过<font> 标签更改:field.htmlText = "<font face='Arial'>Formatted text</font>";
也可设置TextFormat对象的font属性:formatter.font = "Arial";
或者在CSS中定义font-family 属性:p {font-family: Arial;}
需要注意的是电脑中必须要有你所指定的字体,因为有些电脑上可能没有安装相应的字体,这是可指定多种字体:formatter.font = "Arial, Verdana, Helvetica";
如果都没有指定字体,默认使用系统字体。
另外我们还可使用字体组,字体组是系统默认字体的一个分类,有三种: _sans, _serif, 和_typewriter。
_sans 组包含如Arial 或Helvetica,_serif组包含如Times 或Times New Roman,_typewriter 组包含如Courier 或Courier New