flash.text
public class TextField
继承TextField Inheritance InteractiveObject Inheritance DisplayObject Inheritance EventDispatcher Inheritance Object

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

TextField 类用于创建显示对象以显示和输入文本。 SWF 文件中的所有动态文本字段和输入文本字段都是 TextField 类的实例。 可以在属性检查器中为文本字段指定实例名称,并且可以在 ActionScript 中使用 TextField 类的方法和属性对文本字段进行操作。 TextField 的实例名称显示在“影片管理器”中及“动作”面板的“插入目标路径”对话框中。

若要动态创建文本字段,请使用 TextField() 构造函数。

TextField 类的方法允许您设置、选择并操作在创作过程中或运行时创建的动态或输入文本字段中的文本。

ActionScript 提供了多种在运行时设置文本格式的方法。 TextFormat 类允许您设置 TextField 对象的字符和段落格式。 您可以使用 TextField.styleSheet 属性和 StyleSheet 类来对文本字段应用层叠样式表 (CSS) 样式。 您可以使用 CSS 设置内置 HTML 标签的样式、定义新的格式设置标签或应用样式。 您可以将 HTML 格式的文本(该文本可以选择使用 CSS 样式)直接分配给文本字段。 分配给文本字段的 HTML 文本可以包含嵌入的媒体(影片剪辑、SWF 文件、GIF 文件、PNG 文件和 JPEG 文件)。 文本在嵌入的媒体旁自动换行,这与 Web 浏览器的文本在 HTML 文档中嵌入的媒体旁换行非常类似。

Flash Player 还支持部分 HTML 标签,可以使用这些 HTML 标签设置文本格式。 要查看受支持 HTML 标签的列表,请参阅对 htmlText 属性的描述。

查看示例

另请参见

flash.text.TextFormat
flash.text.StyleSheet
核心显示类
处理文本的基础知识



公共 属性
 属性定义方
 InheritedaccessibilityProperties : AccessibilityProperties
此显示对象的当前辅助功能选项。
DisplayObject
 Inheritedalpha : Number
指示指定对象的 Alpha 透明度值。
DisplayObject
  alwaysShowSelection : Boolean
如果设置为 true 且文本字段没有焦点,Flash Player 将以灰色突出显示文本字段中的所选内容。
TextField
  antiAliasType : String
用于此文本字段的消除锯齿类型。
TextField
  autoSize : String
控制文本字段的自动大小调整和对齐。
TextField
  background : Boolean
指定文本字段是否具有背景填充。
TextField
  backgroundColor : uint
文本字段背景的颜色。
TextField
 InheritedblendMode : String
BlendMode 类中的一个值,用于指定要使用的混合模式。
DisplayObject
  border : Boolean
指定文本字段是否具有边框。
TextField
  borderColor : uint
文本字段边框的颜色。
TextField
  bottomScrollV : int
[read-only] 一个整数(从 1 开始的索引),指示指定文本字段中当前可以看到的最后一行。
TextField
 InheritedcacheAsBitmap : Boolean
如果设置为 true,则 Flash Player 将缓存显示对象的内部位图表示形式。
DisplayObject
  caretIndex : int
[read-only] 插入点(尖号)位置的索引。
TextField
  condenseWhite : Boolean
一个布尔值,它指定是否应删除具有 HTML 文本的文本字段中的额外空白(空格、换行符等)。
TextField
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
 InheritedcontextMenu : ContextMenu
指定与此对象相关联的上下文菜单。
InteractiveObject
  defaultTextFormat : TextFormat
指定应用于新插入文本(例如,使用 replaceSelectedText() 方法插入的文本或用户输入的文本)的格式。
TextField
  displayAsPassword : Boolean
指定文本字段是否是密码文本字段。
TextField
 InheriteddoubleClickEnabled : Boolean
指定此对象是否接收 doubleClick 事件。
InteractiveObject
  embedFonts : Boolean
指定是否使用嵌入字体轮廓进行呈现。
TextField
 Inheritedfilters : Array
包含当前与显示对象关联的每个滤镜对象的索引数组。
DisplayObject
 InheritedfocusRect : Object
指定此对象是否显示焦点矩形。
InteractiveObject
  gridFitType : String
用于此文本字段的网格固定类型。
TextField
 Inheritedheight : Number
指示显示对象的高度,以像素为单位。
DisplayObject
  htmlText : String
包含文本字段内容的 HTML 表示形式。
TextField
  length : int
[read-only] 文本字段中的字符数。
TextField
 InheritedloaderInfo : LoaderInfo
[read-only] 返回一个 LoaderInfo 对象,其中包含加载此显示对象所属的文件的相关信息。
DisplayObject
 Inheritedmask : DisplayObject
调用显示对象被指定的 mask 对象遮罩。
DisplayObject
  maxChars : int
文本字段中最多可包含的字符数(即用户输入的字符数)。
TextField
  maxScrollH : int
[read-only] scrollH 的最大值。
TextField
  maxScrollV : int
[read-only] scrollV 的最大值。
TextField
 InheritedmouseEnabled : Boolean
指定此对象是否接收鼠标消息。
InteractiveObject
  mouseWheelEnabled : Boolean
一个布尔值,指示当用户单击某个文本字段且用户滚动鼠标滚轮时,Flash Player 是否应自动滚动多行文本字段。
TextField
 InheritedmouseX : Number
[read-only] 指示鼠标位置的 x 坐标,以像素为单位。
DisplayObject
 InheritedmouseY : Number
[read-only] 指示鼠标位置的 y 坐标,以像素为单位。
DisplayObject
  multiline : Boolean
指示文本字段是否为多行文本字段。
TextField
 Inheritedname : String
指示 DisplayObject 的实例名称。
DisplayObject
  numLines : int
[read-only] 定义多行文本字段中的文本行数。
TextField
 InheritedopaqueBackground : Object
指定显示对象是否由于具有某种背景颜色而不透明。
DisplayObject
 Inheritedparent : DisplayObjectContainer
[read-only] 指示包含此显示对象的 DisplayObjectContainer 对象。
DisplayObject
 Inheritedprototype : Object
[static] 对类或函数对象的原型对象的引用。
Object
  restrict : String
指示用户可输入到文本字段中的字符集。
TextField
 Inheritedroot : DisplayObject
[read-only] 对于加载的 SWF 文件中的显示对象,root 属性是此 SWF 文件所表示的显示列表树结构部分中的顶级显示对象。
DisplayObject
 Inheritedrotation : Number
指示 DisplayObject 实例距其原始方向的旋转程度,以度为单位。
DisplayObject
 Inheritedscale9Grid : Rectangle
当前有效的缩放网格。
DisplayObject
 InheritedscaleX : Number
指示从注册点开始应用的对象的水平缩放比例(百分比)。
DisplayObject
 InheritedscaleY : Number
指示从对象注册点开始应用的对象的垂直缩放比例(百分比)。
DisplayObject
  scrollH : int
当前水平滚动位置。
TextField
 InheritedscrollRect : Rectangle
显示对象的滚动矩形范围。
DisplayObject
  scrollV : int
文本在文本字段中的垂直位置。
TextField
  selectable : Boolean
一个布尔值,指示文本字段是否可选。
TextField
  selectionBeginIndex : int
[read-only] 当前所选内容中第一个字符从零开始的字符索引值。
TextField
  selectionEndIndex : int
[read-only] 当前所选内容中最后一个字符从零开始的字符索引值。
TextField
  sharpness : Number
此文本字段中字型边缘的清晰度。
TextField
 Inheritedstage : Stage
[read-only] 显示对象的舞台。
DisplayObject
  styleSheet : StyleSheet
将样式表附加到文本字段。
TextField
 InheritedtabEnabled : Boolean
指定此对象是否遵循 Tab 键顺序。
InteractiveObject
 InheritedtabIndex : int
指定 SWF 文件中的对象按 Tab 键顺序排列。
InteractiveObject
  text : String
作为文本字段中当前文本的字符串。
TextField
  textColor : uint
文本字段中文本的颜色(采用十六进制格式)。
TextField
  textHeight : Number
[read-only] 文本的高度,以像素为单位。
TextField
  textWidth : Number
[read-only] 文本的宽度,以像素为单位。
TextField
  thickness : Number
此文本字段中字型边缘的粗细。
TextField
 Inheritedtransform : Transform
一个对象,具有与显示对象的矩阵、颜色转换和像素范围有关的属性。
DisplayObject
  type : String
文本字段的类型。
TextField
  useRichTextClipboard : Boolean
指定在复制和粘贴文本时是否同时复制和粘贴其格式。
TextField
 Inheritedvisible : Boolean
显示对象是否可见。
DisplayObject
 Inheritedwidth : Number
指示显示对象的宽度,以像素为单位。
DisplayObject
  wordWrap : Boolean
一个布尔值,指示文本字段是否自动换行。
TextField
 Inheritedx : Number
指示 DisplayObject 实例相对于父级 DisplayObjectContainer 本地坐标的 x 坐标。
DisplayObject
 Inheritedy : Number
指示 DisplayObject 实例相对于父级 DisplayObjectContainer 本地坐标的 y 坐标。
DisplayObject
公共 方法
 方法定义方
  
创建新的 TextField 实例。
TextField
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。
EventDispatcher
  
将 newText 参数指定的字符串追加到文本字段的文本的末尾。
TextField
 Inherited
将事件调度到事件流中。
EventDispatcher
 Inherited
getBounds(targetCoordinateSpace:DisplayObject):Rectangle
返回一个矩形,该矩形定义相对于 targetCoordinateSpace 对象坐标系的显示对象区域。
DisplayObject
  
返回一个矩形,该矩形是字符的边框。
TextField
  
在 x 和 y 参数指定的位置返回从零开始的字符索引值。
TextField
  
如果给定一个字符索引,则返回同一段落中第一个字符的索引。
TextField
  
返回给定 id 或已使用 标签添加到 HTML 格式文本字段中的图像或 SWF 文件的 DisplayObject 引用。
TextField
  
在 x 和 y 参数指定的位置返回从零开始的行索引值。
TextField
  
返回 charIndex 参数指定的字符所在的行的索引值(从零开始)。
TextField
  
getLineLength(lineIndex:int):int
返回特定文本行中的字符数。
TextField
  
返回给定文本行的度量信息。
TextField
  
getLineOffset(lineIndex:int):int
返回 lineIndex 参数指定的行中第一个字符的字符索引。
TextField
  
getLineText(lineIndex:int):String
返回 lineIndex 参数指定的行的文本。
TextField
  
如果给定一个字符索引,则返回包含给定字符的段落的长度。
TextField
 Inherited
getRect(targetCoordinateSpace:DisplayObject):Rectangle
返回一个矩形,该矩形根据 targetCoordinateSpace 参数定义的坐标系定义显示对象的边界,但不包括形状上的任何笔触。
DisplayObject
  
getTextFormat(beginIndex:int = -1, endIndex:int = -1):TextFormat
返回 TextFormat 对象,其中包含 beginIndex 和 endIndex 参数指定的文本范围的格式信息。
TextField
 Inherited
将 point 对象从舞台(全局)坐标转换为显示对象的(本地)坐标。
DisplayObject
 Inherited
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。
EventDispatcher
 Inherited
指示对象是否已经定义了指定的属性。
Object
 Inherited
计算显示对象,以确定它是否与 obj 显示对象重叠或相交。
DisplayObject
 Inherited
hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean
计算显示对象,以确定它是否与 x 和 y 参数指定的点重叠或相交。
DisplayObject
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
 Inherited
将 point 对象从显示对象的(本地)坐标转换为舞台(全局)坐标。
DisplayObject
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
从 EventDispatcher 对象中删除侦听器。
EventDispatcher
  
使用 value 参数的内容替换当前所选内容。
TextField
  
replaceText(beginIndex:int, endIndex:int, newText:String):void
使用 newText 参数的内容替换 beginIndex 和 endIndex 参数指定的字符范围。
TextField
 Inherited
设置循环操作动态属性的可用性。
Object
  
setSelection(beginIndex:int, endIndex:int):void
将第一个字符和最后一个字符的索引值(使用 beginIndex 和 endIndex 参数指定)指定的文本设置为所选内容。
TextField
  
setTextFormat(format:TextFormat, beginIndex:int = -1, endIndex:int = -1):void
将 format 参数指定的文本格式应用于文本字段中的指定文本。
TextField
 Inherited
返回指定对象的字符串表示形式。
Object
 Inherited
返回指定对象的原始值。
Object
 Inherited
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。
EventDispatcher
事件
 事件摘要定义方
 Inherited Flash Player 获得操作系统焦点并变为活动状态时调度。EventDispatcher
 Inherited 将显示对象添加到显示列表中时调度。DisplayObject
 Inherited 在将显示对象直接添加到舞台显示列表或将包含显示对象的子树添加至舞台显示列表中时调度。DisplayObject
   修改控件的值后调度。TextField
 Inherited 用户在同一 InteractiveObject 上按下并释放用户指针设备的主按钮时调度。InteractiveObject
 Inherited Flash Player 失去操作系统焦点并变为非活动状态时调度。EventDispatcher
 Inherited 如果 InteractiveObject 的 doubleClickEnabled 标志设置为 true,当用户在该对象上快速连续按下两次并释放指针设备的主按钮时调度。InteractiveObject
 Inherited 播放头进入新帧时调度。DisplayObject
 Inherited 显示对象获得焦点后调度。InteractiveObject
 Inherited 显示对象失去焦点后调度。InteractiveObject
 Inherited 用户按下某个键时调度。InteractiveObject
 Inherited 用户尝试使用键盘导航更改焦点时调度。InteractiveObject
 Inherited 用户释放某个键时调度。InteractiveObject
   当用户单击启用 HTML 的文本字段中的超链接(其中的 URL 以“event:”开头)时调度。TextField
 Inherited 在 Flash Player 窗口中,用户在 InteractiveObject 实例上按下指针设备按钮时调度。InteractiveObject
 Inherited 用户尝试使用指针设备更改焦点时调度。InteractiveObject
 Inherited 用户移动 InteractiveObject 上的指针设备时调度。InteractiveObject
 Inherited 用户将指针设备从 InteractiveObject 实例上移开时调度。InteractiveObject
 Inherited 在 Flash Player 窗口中,用户将指针设备移动到 InteractiveObject 实例上时调度。InteractiveObject
 Inherited 在 Flash Player 窗口中,用户在 InteractiveObject 实例上释放指针设备按钮时调度。InteractiveObject
 Inherited 在 Flash Player 窗口中,鼠标滚轮滚动到 InteractiveObject 实例上时调度。InteractiveObject
 Inherited 将要从显示列表中删除显示对象时调度。DisplayObject
 Inherited 在从显示列表中直接删除显示对象或删除包含显示对象的子树时调度。DisplayObject
 Inherited 将要更新和呈现显示列表时调度。DisplayObject
 Inherited 用户将指针设备从 InteractiveObject 实例上移开时调度。InteractiveObject
 Inherited 用户将指针设备移动到 InteractiveObject 实例上时调度。InteractiveObject
   用户滚动后由 TextField 对象调度。TextField
 Inherited 对象的 tabChildren 标志值发生更改时调度。InteractiveObject
 Inherited 对象的 tabEnabled 标志发生更改时调度。InteractiveObject
 Inherited 对象的 tabIndex 属性值发生更改时调度。InteractiveObject
   用户输入一个或多个文本字符时,Flash Player 将调度 textInput 事件。TextField
属性详细信息
alwaysShowSelection属性
alwaysShowSelection:Boolean  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

如果设置为 true 且文本字段没有焦点,Flash Player 将以灰色突出显示文本字段中的所选内容。 如果设置为 false 且文本字段没有焦点,则 Flash Player 不会突出显示文本字段中的所选内容。

默认值为 false.


实现
    public function get alwaysShowSelection():Boolean
    public function set alwaysShowSelection(value:Boolean):void

另请参见


示例
如何使用示例

编译并运行下面的文件。 在运行此文件时,拖动以分别选择两个文本字段中的文本,注意在您选择两个文本字段中的文本(更改焦点)时,突出显示的所选内容之间的区别:

    package {
    import flash.display.Sprite;
    import flash.text.TextField;
    import flash.text.TextFieldType;

    public class TextField_alwaysShowSelection extends Sprite {
        public function TextField_alwaysShowSelection() {
            var label1:TextField = createTextField(0, 20, 200, 20);
            label1.text = "This text is selected.";
            label1.setSelection(0, 9);
            label1.alwaysShowSelection = true;

            var label2:TextField = createTextField(0, 50, 200, 20);
            label2.text = "Drag to select some of this text.";
        }

        private function createTextField(x:Number, y:Number, width:Number, height:Number):TextField {
            var result:TextField = new TextField();
            result.x = x; result.y = y;
            result.width = width; result.height = height;
            addChild(result);
            return result;
        }
    }
}
antiAliasType属性 
antiAliasType:String  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

用于此文本字段的消除锯齿类型。 将 flash.text.AntiAliasType 常数用于此属性。 仅在字体为嵌入(即 embedFonts 属性设置为 true)时可以控制此设置。 默认设置为 flash.text.AntiAliasType.ADVANCED

若要设置此属性的值,请使用下列字符串值:

字符串值Description
flash.text.AntiAliasType.NORMAL应用常规文本消除锯齿功能。 这与 Flash Player 7 和更早版本中使用的消除锯齿类型匹配。
flash.text.AntiAliasType.ADVANCED应用高级消除锯齿功能,这增加了文本的可读性。 (此功能在 Flash Player 8 中可用。) 高级消除锯齿功能可以高品质呈现小尺寸的字体。 它最适合在具有大量小字号文本的应用程序中使用。 建议不要对大于 48 磅的字体使用高级消除锯齿功能。


实现
    public function get antiAliasType():String
    public function set antiAliasType(value:String):void

另请参见

autoSize属性 
autoSize:String  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

控制文本字段的自动大小调整和对齐。 TextFieldAutoSize 常数的可接受值为 TextFieldAutoSize.NONE(默认值)、TextFieldAutoSize.LEFTTextFieldAutoSize.RIGHTTextFieldAutoSize.CENTER

如果 autoSize 设置为 TextFieldAutoSize.NONE(默认值),则不会进行调整。

如果 autoSize 设置为 TextFieldAutoSize.LEFT,会将文本视为左对齐文本,这意味着该文本字段的左边距保持固定,在右边可调整单个文本字段行。 如果文本中包括换行符(例如 "\n""\r"),则会另外调整底边来适合文本的下一行。 如果 wordWrap 也设置为 true,则仅调整文本字段的底边,而右边距保持固定。

如果 autoSize 设置为 TextFieldAutoSize.RIGHT,会将文本视为右对齐文本,这意味着该文本字段的右边距保持固定,可在左边调整单个文本字段行。 如果文本中包括换行符(例如 "\n" or "\r")),则会另外调整底边来适合文本的下一行。 如果 wordWrap 也设置为 true,则仅调整文本字段的底边,而左边距保持固定。

如果 autoSize 设置为 TextFieldAutoSize.CENTER,会将文本视为居中对齐文本,这意味着对单个文本字段行的调整将使其在左右边距间均衡分布。 如果文本中包括换行符(例如 "\n""\r"),则会另外调整底边来适合文本的下一行。 如果 wordWrap 也设置为 true,则仅调整文本字段的底边,而左右边距保持固定。


实现
    public function get autoSize():String
    public function set autoSize(value:String):void

引发
ArgumentError — 指定的 autoSize 不是 flash.text.TextFieldAutoSize 的成员。

另请参见

background属性 
background:Boolean  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

指定文本字段是否具有背景填充。 如果为 true,则文本字段具有背景填充。 如果为 false,则文本字段没有背景填充。 使用 backgroundColor 属性来设置文本字段的背景颜色。

默认值为 false.


实现
    public function get background():Boolean
    public function set background(value:Boolean):void

另请参见

backgroundColor属性 
backgroundColor:uint  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

文本字段背景的颜色。 默认值为 0xFFFFFF(白色)。 即使当前没有背景,也可检索或设置此属性,但只有当文本字段已将 background 属性设置为 true 时,才可以看到颜色。


实现
    public function get backgroundColor():uint
    public function set backgroundColor(value:uint):void

另请参见

border属性 
border:Boolean  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

指定文本字段是否具有边框。 如果为 true,则文本字段具有边框。 如果为 false,则文本字段没有边框。 使用 borderColor 属性来设置边框颜色。

默认值为 false.


实现
    public function get border():Boolean
    public function set border(value:Boolean):void

另请参见

borderColor属性 
borderColor:uint  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

文本字段边框的颜色。 默认值为 0x000000(黑色)。 即使当前没有边框,也可检索或设置此属性,但只有当文本字段已将 border 属性设置为 true 时,才可以看到颜色。


实现
    public function get borderColor():uint
    public function set borderColor(value:uint):void

另请参见

bottomScrollV属性 
bottomScrollV:int  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

一个整数(从 1 开始的索引),指示指定文本字段中当前可以看到的最后一行。 可将文本字段看作文本块上的一个窗口。 scrollV 属性是此窗口中最顶端可见行的从 1 开始的索引。

当前可以看到文本字段中 scrollVbottomScrollV 指示的行之间的所有文本。


实现
    public function get bottomScrollV():int

另请参见

caretIndex属性 
caretIndex:int  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

插入点(尖号)位置的索引。 如果没有显示任何插入点,则在将焦点恢复到字段时,值将为插入点所在的位置(通常为插入点上次所在的位置,如果字段不曾具有焦点,则为 0)。

选择范围索引是从零开始的(例如,第一个位置为 0、第二个位置为 1,依此类推)。


实现
    public function get caretIndex():int

另请参见


示例
如何使用示例

在此示例中,创建了一个 TextField 实例,并用文本填充该实例。 分配了一个事件侦听器,以便在用户单击 TextField 时,调用 printCursorPosition 方法。 在这种情况下,将输出 caretIndexselectionBeginIndexselectionEndIndex 属性的值。

运行此示例并尝试在 TextField 中单击以选择文本。 然后在字段中单击,但不选择文本。 如果在文本中单击但不进行选择,caretIndex 属性将指示在何处出现插入点,而 selectionBeginIndexselectionEndIndex 属性则等于 caretIndex 属性值。


package {
    import flash.display.Sprite;
    import flash.events.MouseEvent;
    import flash.text.TextField;
    import flash.text.TextFieldType;

    public class TextField_caretIndex extends Sprite {
        public function TextField_caretIndex() {
            var tf:TextField = createTextField(10, 10, 100, 100);
            tf.wordWrap = true;
            tf.type = TextFieldType.INPUT;
            tf.text = "Click in this text field. Compare the difference between clicking without selecting versus clicking and selecting text.";
            tf.addEventListener(MouseEvent.CLICK, printCursorPosition);
        }

        private function printCursorPosition(event:MouseEvent):void {
            var tf:TextField = TextField(event.target);
            trace("caretIndex:", tf.caretIndex);
            trace("selectionBeginIndex:", tf.selectionBeginIndex);
            trace("selectionEndIndex:", tf.selectionEndIndex);
        }

        private function createTextField(x:Number, y:Number, width:Number, height:Number):TextField {
            var result:TextField = new TextField();
            result.x = x;
            result.y = y;
            result.width = width;
            result.height = height;
            addChild(result);
            return result;
        }
    }
}
condenseWhite属性 
condenseWhite:Boolean  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

一个布尔值,它指定是否应删除具有 HTML 文本的文本字段中的额外空白(空格、换行符等)。 默认值为 falsecondenseWhite 属性只影响使用 htmlText 属性(而非 text 属性)设置的文本。 如果使用 text 属性设置文本,则忽略 condenseWhite

如果将 condenseWhite 设置为 true,则必须使用标准 HTML 命令(如 <BR><P>)将换行符放在文本字段中。

在设置 htmlText 属性之前设置 condenseWhite 属性。


实现
    public function get condenseWhite():Boolean
    public function set condenseWhite(value:Boolean):void

另请参见


示例
如何使用示例

下面显示将 condenseWhite 设置为 false 和将其设置为 true 之间的区别:

package {
    import flash.display.Sprite;
    import flash.text.TextField;

    public class TextField_condenseWhite extends Sprite {
        public function TextField_condenseWhite() {
            var tf1:TextField = createTextField(0, 0, 200, 50);
            tf1.condenseWhite = false;
            tf1.htmlText = "keep    on\n\ttruckin'";
            
            var tf2:TextField = createTextField(0, 120, 200, 50);
            tf2.condenseWhite = true;
            tf2.htmlText = "keep    on\n\ttruckin'";
        }

        private function createTextField(x:Number, y:Number, width:Number, height:Number):TextField {
            var result:TextField = new TextField();
            result.x = x;
            result.y = y;
            result.width = width;
            result.height = height;
            result.border = true;
            addChild(result);
            return result;
        }
    }
}
defaultTextFormat属性 
defaultTextFormat:TextFormat  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

指定应用于新插入文本(例如,使用 replaceSelectedText() 方法插入的文本或用户输入的文本)的格式。

在访问 defaultTextFormat 属性时,返回的 TextFormat 对象已定义了它的所有属性。 所有属性都不为 null

注意:如果对文本字段应用了样式表,则不能设置该属性。


实现
    public function get defaultTextFormat():TextFormat
    public function set defaultTextFormat(value:TextFormat):void

引发
Error — 此方法不能用于具有样式表的文本字段。

另请参见

displayAsPassword属性 
displayAsPassword:Boolean  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

指定文本字段是否是密码文本字段。 如果此属性的值为 true,则文本字段被视为密码文本字段,并使用星号而不是实际字符来隐藏输入的字符。 如果为 false,则不会将文本字段视为密码文本字段。 启用密码模式时,“剪切”和“复制”命令及其对应的键盘快捷键将不起作用。 此安全机制可防止不良用户使用快捷键在无人看管的计算机上破译密码。

默认值为 false.


实现
    public function get displayAsPassword():Boolean
    public function set displayAsPassword(value:Boolean):void
embedFonts属性 
embedFonts:Boolean  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

指定是否使用嵌入字体轮廓进行呈现。 如果为 false,则 Flash Player 使用设备字体呈现文本字段。

如果将文本字段的 embedFonts 属性设置为 true,则必须使用应用于该文本字段的 TextFormat 对象的 font 属性来指定该文本的字体。 如果指定的字体没有嵌入 SWF 文件中,则不会显示该文本。

默认值为 false.


实现
    public function get embedFonts():Boolean
    public function set embedFonts(value:Boolean):void

另请参见

gridFitType属性 
gridFitType:String  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

用于此文本字段的网格固定类型。 仅在文本字段的 flash.text.AntiAliasType 属性设置为 flash.text.AntiAliasType.ADVANCED 时才应用此属性。

使用的网格固定类型确定了 Flash Player 是否强制让粗水平线和垂直线适合像素网格或子像素网格。

对于 flash.text.GridFitType 属性,您可以使用下列字符串值:

字符串值Description
flash.text.GridFitType.NONE指定无网格固定。 不强制根据像素网格调整字型中的水平线和垂直线。 此设置通常适合动画或大号字。
flash.text.GridFitType.PIXEL指定粗水平线和垂直线适合像素网格。 此设置仅适用于左对齐文本字段。 若要使用此设置,文本字段的 flash.dispaly.AntiAliasType 属性必须设置为 flash.text.AntiAliasType.ADVANCED。 此设置通常能为左对齐文本提供最佳可读性。
flash.text.GridFitType.SUBPIXEL指定粗水平线和垂直线适合 LCD 显示器上的子像素网格。 若要使用此设置,文本字段的 flash.text.AntiAliasType 属性必须设置为 flash.text.AntiAliasType.ADVANCEDflash.text.GridFitType.SUBPIXEL 设置通常适合右对齐或居中的动态文本,有时,为了在动画与文本品质之间达到一种平衡,也可使用此设置。

默认值为 pixel.


实现
    public function get gridFitType():String
    public function set gridFitType(value:String):void

另请参见

htmlText属性 
htmlText:String  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

包含文本字段内容的 HTML 表示形式。

Flash Player 支持以下 HTML 标签:

标签 Description
锚标签 <a> 标签创建超文本链接并支持以下属性:
  • href:该 URL 可以是绝对路径或相对路径(相对于加载页的 SWF 文件的位置)。 http://www.adobe.com 示例表示对 URL 的绝对引用;/index.html 示例表示相对引用。 绝对 URL 必须以 http:// 为前缀,否则 Flash 会将其视为相对 URL。
  • event:使用 event 属性 (attribute) 来指定在用户单击超文本链接时调度的 link TextEvent 的 text 属性 (property)。 例如 event:myEvent;在用户单击此超文本链接时,文本字段会调度其 text 属性设置为 "myEvent"link TextEvent。
  • target:指定加载页面的目标窗口的名称。 选项包括 _self_blank_parent_top_self 选项指定当前窗口中的当前帧,_blank 指定一个新窗口,_parent 指定当前帧的父级,而 _top 指定当前窗口中的顶级帧。

可以使用 link 事件来使链接在 SWF 文件中执行 ActionScript 函数,而不是打开 URL。

还可以使用样式表为锚标签定义 a:linka:hovera:active 样式。

粗体标签 <b> 标签以粗体形式呈现文本。 粗体必须可用于所使用的字体。
换行标签 <br> 标签将在文本字段中创建一个换行符。 若要使用此标签,您必须将文本字段设置为多行文本字段。
字体标签 <font> 标签指定一种字体或一个字体列表来显示文本。字体标签支持以下属性:
  • color:只支持十六进制颜色 (#FFFFFF) 值。
  • face:指定要使用的字体的名称。 如下例所示,您可以指定一个以逗号分隔的字体名称的列表,在这种情况下,Flash Player 选择第一个可用字体。 如果用户计算机系统上没有安装指定字体,或指定字体未嵌入 SWF 文件中,则 Flash Player 将选择替代字体。
  • size:指定字体的大小。 您可以使用绝对像素大小(如 16 或 18),也可以使用相对磅值(如 +2 或 -4)。
图像标签 使用 <img> 标签可将外部图像文件(JPEG、GIF、PNG)、SWF 文件和影片剪辑嵌入到文本字段中。 在文本字段中,文本在嵌入的图像旁自动换行。 若要使用该标签,必须将文本字段设置为多行和文本换行。

<img> 标签支持以下属性:

  • src:指定图像或 SWF 文件的 URL,或库中影片剪辑元件的链接标识符。 此属性是必需的,所有其它属性都是可选的。 外部文件(JPEG、GIF、PNG 和 SWF 文件)只有在完全下载之后才能显示。
  • width:所插入的图像、SWF 文件或影片剪辑的宽度(以像素为单位)。
  • height:所插入的图像、SWF 文件或影片剪辑的高度(以像素为单位)。
  • align:指定文本字段中嵌入图像的水平对齐方式。 有效值为 leftright。 默认值为 left
  • hspace:指定图像周围不显示任何文本的水平空间量。 默认值为 8。
  • vspace:指定图像周围不显示任何文本的垂直空间量。 默认值为 8。
  • id:指定包含嵌入的图像文件、SWF 文件或影片剪辑的影片剪辑实例(由 Flash Player 创建)的名称。 该属性可用于控制使用 ActionScript 嵌入的内容。
  • checkPolicyFile:指定 Flash Player 将检查服务器上与图像的域相关的跨域策略文件。 如果跨域策略文件存在,则此文件中列出的域中的 SWF 文件可以访问加载图像的数据,例如通过调用以此图像作为 source 参数的 BitmapData.draw() 方法。 有关详细信息,请参阅《ActionScript 3.0 编程》中的“Flash Player 安全性”一章。

Flash 以完全大小显示文本字段中嵌入的媒体。 若要指定嵌入的媒体的尺寸,请使用 <img> 标签的 heightwidth 属性。

通常情况下,文本字段中嵌入的图像显示在 <img> 标签后的行上。 但是,如果 <img> 标签是文本字段中的第一个字符,则该图像显示在文本字段的第一行上。

斜体标签 <i> 标签以斜体形式显示标签中的文本。 斜体必须可用于所使用的字体。
列表项标签 <li> 标签在所包含的文本前放置项目符号。 注意:因为 Flash Player 无法识别有序和无序列表标签(<ol><ul>),所以这些标签无法修改列表的呈现方式。 所有列表都是无序的,所有列表项都使用项目符号。
段落标签 <p> 标签创建一个新段落。 若要使用此标签,您必须将文本字段设置为多行文本字段。 <p> 标签支持以下属性:
  • align:指定段落内文本的对齐方式;有效值为 leftrightjustifycenter
  • class:指定 flash.text.StyleSheet 对象定义的 CSS 样式类。
Span 标签 <span> 标签只可用于 CSS 文本样式。 它支持以下属性:
  • class:指定 flash.text.StyleSheet 对象定义的 CSS 样式类。
文本格式标签

使用 <textformat> 标签可在文本字段中使用 TextFormat 类的段落格式设置属性的子集,其中包括行距、缩进、边距和 Tab 停靠位。 您可以将 <textformat> 标签与内置 HTML 标签结合使用。

<textformat> 标签具有以下属性:

  • blockindent:指定块缩进(以磅为单位);对应于 TextFormat.blockIndent
  • indent:指定从左边距到段落中第一个字符的缩进;对应于 TextFormat.indent。 正数和负数均可以接受。
  • leading:指定行与行之间的前导量(垂直间距);对应于 TextFormat.leading。 正数和负数均可以接受。
  • leftmargin:指定段落的左边距(以磅为单位);对应于 TextFormat.leftMargin
  • rightmargin:指定段落的右边距(以磅为单位);对应于 TextFormat.rightMargin
  • tabstops:将自定义 Tab 停靠位指定为一个非负整数的数组;对应于 TextFormat.tabStops
下划线标签 <u> 标签为标签文本添加下划线。

Flash Player 支持以下 HTML 实体:

实体 Description
&lt; < (小于)
&gt; > (大于)
&amp; &(和)
&quot; "(双引号)
&apos; '(撇号,单引号)

Flash 还支持显式字符代码,如 &#38;(ASCII 和号)和 &#x20AC;(Unicode € 符号)。


实现
    public function get htmlText():String
    public function set htmlText(value:String):void

另请参见


示例
如何使用示例

下例创建一个名为 tf1 的 TextField,并将 HTML 格式的字符串赋给其 text 属性。 当跟踪其 htmlText 属性时,输出为 HTML 格式的字符串,带有由 Flash Player 自动添加的其它标签(如 <P> 和 <FONT>)。 当跟踪 text 属性的值时,将显示不带 HTML 标签的无格式字符串。

为了进行比较,我们对另一个名为 tf2 的 TextField 对象执行了同样的步骤,并在设置 tf2htmlText 属性之前将 StyleSheet 对象赋给它的 styleSheet 属性。 在这种情况下,当跟踪 htmlText 属性时,它只包括最初赋给 htmlText 属性的 HTML 文本,说明 Flash Player 没有添加其它标签。


package {
    import flash.display.Sprite;
    import flash.text.StyleSheet;
    import flash.text.TextField;

    public class TextField_text extends Sprite {
        public function TextField_text() {
            var tf1:TextField = createTextField(10, 10, 400, 22);
            tf1.htmlText = "<b>Lorem ipsum dolor sit amet.</b>";

            // htmlText: <P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"><b>Lorem ipsum dolor sit amet.</b></FONT></P>
            trace("htmlText: " + tf1.htmlText);
            // text: Lorem ipsum dolor sit amet.
            trace("text: " + tf1.text);
            
            var tf2:TextField = createTextField(10, 50, 400, 22);
            tf2.styleSheet = new StyleSheet();
            tf2.htmlText = "<b>Lorem ipsum dolor sit amet.</b>";
            // htmlText: <b>Lorem ipsum dolor sit amet.</b>
            trace("htmlText: " + tf2.htmlText);
            // text: Lorem ipsum dolor sit amet.
            trace("text: " + tf2.text);
        }

        private function createTextField(x:Number, y:Number, width:Number, height:Number):TextField {
            var result:TextField = new TextField();
            result.x = x;
            result.y = y;
            result.width = width;
            result.height = height;
            addChild(result);
            return result;
        }
    }
}
length属性 
length:int  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

文本字段中的字符数。 如 tab (\t) 之类的字符视为一个字符。


实现
    public function get length():int
maxChars属性 
maxChars:int  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

文本字段中最多可包含的字符数(即用户输入的字符数)。 脚本可以插入比 maxChars 允许的字符数更多的文本;maxChars 属性仅指示用户可以输入多少文本。 如果此属性的值为 0,则用户可以输入无限数量的文本。

默认值为 0.


实现
    public function get maxChars():int
    public function set maxChars(value:int):void
maxScrollH属性 
maxScrollH:int  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

scrollH 的最大值。


实现
    public function get maxScrollH():int

另请参见

maxScrollV属性 
maxScrollV:int  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

scrollV 的最大值。


实现
    public function get maxScrollV():int

另请参见

mouseWheelEnabled属性 
mouseWheelEnabled:Boolean  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

一个布尔值,指示当用户单击某个文本字段且用户滚动鼠标滚轮时,Flash Player 是否应自动滚动多行文本字段。 默认情况下,此值为 true。 如果您想让文本字段在用户滚动鼠标滚轮时不随之滚动,或要实现您自己的文本字段滚动方式,可以使用此属性。


实现
    public function get mouseWheelEnabled():Boolean
    public function set mouseWheelEnabled(value:Boolean):void
multiline属性 
multiline:Boolean  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

指示文本字段是否为多行文本字段。 如果值为 true,则文本字段为多行文本字段;如果值为 false,则文本字段为单行文本字段。

默认值为 false.


实现
    public function get multiline():Boolean
    public function set multiline(value:Boolean):void

另请参见

numLines属性 
numLines:int  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

定义多行文本字段中的文本行数。 如果 wordWrap 属性设置为 true,则在文本自动换行时会增加行数。


实现
    public function get numLines():int

另请参见

restrict属性 
restrict:String  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

指示用户可输入到文本字段中的字符集。 如果 restrict 属性的值为 null,则可以输入任何字符。 如果 restrict 属性的值为空字符串,则不能输入任何字符。 如果 restrict 属性的值为一串字符,则只能在文本字段中输入该字符串中的字符。 从左向右扫描该字符串。 可以使用连字符 (-) 指定一个范围。 它只限制用户交互;脚本可将任何文本放入文本字段中。 此属性不与属性检查器中的“嵌入字体”选项同步。

如果字符串以尖号 (^) 开头,则先接受所有字符,然后从接受字符集中排除字符串中 ^ 之后的字符。 如果字符串不以尖号 (^) 开头,则最初不接受任何字符,然后将字符串中的字符包括在接受字符集中。

下例仅允许在文本字段中输入大写字符、空格和数字:

  my_txt.restrict = "A-Z 0-9";
  

下例包含除小写字母之外的所有字符:

  my_txt.restrict = "^a-z";
  

可以使用反斜杠输入 ^ 或 - 的本义。 认可的反斜杠序列为 \-、\^ 或 \\。 反斜杠在字符串中必须是一个本义字符,因此在 ActionScript 中指定时必须使用两个反斜杠。 例如,下面的代码只包含短划线 (-) 和尖号 (^):

  my_txt.restrict = "\\-\\^";
  

可在字符串中的任何地方使用 ^,以在包含字符与排除字符之间进行切换。 下面的代码只包含除大写字母 Q 之外的大写字母:

  my_txt.restrict = "A-Z^Q";
  

可以使用 u 转义序列构造 restrict 字符串。 下面的代码只包含从 ASCII 32(空格)到 ASCII 126(代字号)之间的字符。

  my_txt.restrict = " -~";
  

默认值为 null.


实现
    public function get restrict():String
    public function set restrict(value:String):void
scrollH属性 
scrollH:int  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

当前水平滚动位置。 如果 scrollH 属性为 0,则不能水平滚动文本。 此属性值是一个以像素为单位表示水平位置的整数。

水平滚动的单位是像素,而垂直滚动的单位是行。 水平滚动以像素计量是因为您通常使用的大多数字体都是按比例隔开的;这意味着字符可以有不同的宽度。 Flash Player 按行进行垂直滚动是因为用户通常希望看到完整的一行文本,而不是一行的局部。 即使一行中包含多种字体,行的高度也会调整到与使用的最大字体相适合。

注意: scrollH 属性是从 0 开始的,不像 scrollV 垂直滚动属性是从 1 开始的。


实现
    public function get scrollH():int
    public function set scrollH(value:int):void

另请参见

scrollV属性 
scrollV:int  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

文本在文本字段中的垂直位置。 scrollV 属性可帮助用户定位到长篇文章的特定段落,还可用于创建滚动文本字段。

垂直滚动的单位是行,而水平滚动的单位是像素。 如果显示的第一行是文本字段中的第一行,则 scrollV 设置为 1(而非 0)。 水平滚动以像素计量是因为大多数字体都是按比例隔开的;这意味着字符可以有不同的宽度。 Flash 按行进行垂直滚动是因为用户通常希望看到完整的一行文本,而不是一行的局部。 即使一行上有多种字体,行的高度也会调整到与使用的最大字体相适合。


实现
    public function get scrollV():int
    public function set scrollV(value:int):void

另请参见

selectable属性 
selectable:Boolean  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

一个布尔值,指示文本字段是否可选。 值 true 表示文本可选。 selectable 属性控制文本字段是否可选,而不控制文本字段是否可编辑。 动态文本字段即使不可编辑,它也可能是可选的。 如果动态文本字段是不可选的,则用户不能选择其中的文本。

如果 selectable 设置为 false,则文本字段中的文本不响应来自鼠标或键盘的选择命令,并且不能使用“复制”命令复制文本。 如果 selectable 设置为 true,则可以使用鼠标或键盘选择文本字段中的文本,并且可以使用“复制”命令复制文本。 即使文本字段是动态文本字段而不是输入文本字段,您也可以用这种方式选择文本。

默认值为 true.


实现
    public function get selectable():Boolean
    public function set selectable(value:Boolean):void

另请参见

selectionBeginIndex属性 
selectionBeginIndex:int  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

当前所选内容中第一个字符从零开始的字符索引值。 例如,第一个字符的索引值是 0,第二个字符的索引值是 1,依此类推。 如果未选定任何文本,此属性为 caretIndex 的值。


实现
    public function get selectionBeginIndex():int

另请参见


示例
如何使用示例

在此示例中,创建了一个 TextField 实例,并用文本填充该实例。 分配了一个事件侦听器,以便在用户单击 TextField 时,调用 printCursorPosition 方法。 在这种情况下,将输出 caretIndexselectionBeginIndexselectionEndIndex 属性的值。

运行此示例并尝试在 TextField 中单击以选择文本。 然后在字段中单击,但不选择文本。 如果在文本中单击但不进行选择,caretIndex 属性将指示在何处出现插入点,而 selectionBeginIndexselectionEndIndex 属性则等于 caretIndex 属性值。


package {
    import flash.display.Sprite;
    import flash.events.MouseEvent;
    import flash.text.TextField;
    import flash.text.TextFieldType;

    public class TextField_caretIndex extends Sprite {
        public function TextField_caretIndex() {
            var tf:TextField = createTextField(10, 10, 100, 100);
            tf.wordWrap = true;
            tf.type = TextFieldType.INPUT;
            tf.text = "Click in this text field. Compare the difference between clicking without selecting versus clicking and selecting text.";
            tf.addEventListener(MouseEvent.CLICK, printCursorPosition);
        }

        private function printCursorPosition(event:MouseEvent):void {
            var tf:TextField = TextField(event.target);
            trace("caretIndex:", tf.caretIndex);
            trace("selectionBeginIndex:", tf.selectionBeginIndex);
            trace("selectionEndIndex:", tf.selectionEndIndex);
        }

        private function createTextField(x:Number, y:Number, width:Number, height:Number):TextField {
            var result:TextField = new TextField();
            result.x = x;
            result.y = y;
            result.width = width;
            result.height = height;
            addChild(result);
            return result;
        }
    }
}
selectionEndIndex属性 
selectionEndIndex:int  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

当前所选内容中最后一个字符从零开始的字符索引值。 例如,第一个字符的索引值是 0,第二个字符的索引值是 1,依此类推。 如果未选定任何文本,此属性为 caretIndex 的值。


实现
    public function get selectionEndIndex():int

另请参见


示例
如何使用示例

在此示例中,创建了一个 TextField 实例,并用文本填充该实例。 分配了一个事件侦听器,以便在用户单击 TextField 时,调用 printCursorPosition 方法。 在这种情况下,将输出 caretIndexselectionBeginIndexselectionEndIndex 属性的值。

运行此示例并尝试在 TextField 中单击以选择文本。 然后在字段中单击,但不选择文本。 如果在文本中单击但不进行选择,caretIndex 属性将指示在何处出现插入点,而 selectionBeginIndexselectionEndIndex 属性则等于 caretIndex 属性值。


package {
    import flash.display.Sprite;
    import flash.events.MouseEvent;
    import flash.text.TextField;
    import flash.text.TextFieldType;

    public class TextField_caretIndex extends Sprite {
        public function TextField_caretIndex() {
            var tf:TextField = createTextField(10, 10, 100, 100);
            tf.wordWrap = true;
            tf.type = TextFieldType.INPUT;
            tf.text = "Click in this text field. Compare the difference between clicking without selecting versus clicking and selecting text.";
            tf.addEventListener(MouseEvent.CLICK, printCursorPosition);
        }

        private function printCursorPosition(event:MouseEvent):void {
            var tf:TextField = TextField(event.target);
            trace("caretIndex:", tf.caretIndex);
            trace("selectionBeginIndex:", tf.selectionBeginIndex);
            trace("selectionEndIndex:", tf.selectionEndIndex);
        }

        private function createTextField(x:Number, y:Number, width:Number, height:Number):TextField {
            var result:TextField = new TextField();
            result.x = x;
            result.y = y;
            result.width = width;
            result.height = height;
            addChild(result);
            return result;
        }
    }
}
sharpness属性 
sharpness:Number  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

此文本字段中字型边缘的清晰度。 仅在文本字段的 flash.text.AntiAliasType 属性设置为 flash.text.AntiAliasType.ADVANCED 时才应用此属性。 sharpness 的范围是从 -400 到 400 的一个数字。 如果尝试将 sharpness 设置为该范围外的值,则 Flash 会将该属性设置为范围内最接近的值(-400 或 400)。

默认值为 0.


实现
    public function get sharpness():Number
    public function set sharpness(value:Number):void

另请参见

styleSheet属性 
styleSheet:StyleSheet  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

将样式表附加到文本字段。 有关创建样式表的信息,请参阅 StyleSheet 类和《ActionScript 3.0 编程》

您可以随时更改与文本字段相关的样式表。 如果更改使用中的样式表,会使用新的样式表重绘文本字段。 您可以将样式表设置为 nullundefined 以删除此样式表。 如果删除正在使用的样式表,则不使用样式表重绘文本字段。

注意:如果删除样式表,则 TextField.text TextField.htmlText 的内容都将体现先前由该样式表应用的格式。 若要保留不带格式的原始 TextField.htmlText 内容,请在删除样式表前将该值保存在变量中。


实现
    public function get styleSheet():StyleSheet
    public function set styleSheet(value:StyleSheet):void

另请参见

text属性 
text:String  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

作为文本字段中当前文本的字符串。 各行之间用回车符('\r',即 ASCII 13)分隔。 此属性包含文本字段中的无格式文本,不带 HTML 标签。

若要获取 HTML 形式的文本,请使用 htmlText 属性。


实现
    public function get text():String
    public function set text(value:String):void

另请参见


示例
如何使用示例

下例创建一个名为 tf1 的 TextField,并将 HTML 格式的字符串赋给其 text 属性。 当跟踪其 htmlText 属性时,输出为 HTML 格式的字符串,带有由 Flash Player 自动添加的其它标签(如 <P> 和 <FONT>)。 当跟踪 text 属性的值时,将显示不带 HTML 标签的无格式字符串。

为了进行比较,我们对另一个名为 tf2 的 TextField 对象执行了同样的步骤,并在设置 tf2htmlText 属性之前将 StyleSheet 对象赋给它的 styleSheet 属性。 在这种情况下,当跟踪 htmlText 属性时,它只包括最初赋给 htmlText 属性的 HTML 文本,说明 Flash Player 没有添加其它标签。


package {
    import flash.display.Sprite;
    import flash.text.StyleSheet;
    import flash.text.TextField;

    public class TextField_text extends Sprite {
        public function TextField_text() {
            var tf1:TextField = createTextField(10, 10, 400, 22);
            tf1.htmlText = "<b>Lorem ipsum dolor sit amet.</b>";

            // htmlText: <P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"><b>Lorem ipsum dolor sit amet.</b></FONT></P>
            trace("htmlText: " + tf1.htmlText);
            // text: Lorem ipsum dolor sit amet.
            trace("text: " + tf1.text);
            
            var tf2:TextField = createTextField(10, 50, 400, 22);
            tf2.styleSheet = new StyleSheet();
            tf2.htmlText = "<b>Lorem ipsum dolor sit amet.</b>";
            // htmlText: <b>Lorem ipsum dolor sit amet.</b>
            trace("htmlText: " + tf2.htmlText);
            // text: Lorem ipsum dolor sit amet.
            trace("text: " + tf2.text);
        }

        private function createTextField(x:Number, y:Number, width:Number, height:Number):TextField {
            var result:TextField = new TextField();
            result.x = x;
            result.y = y;
            result.width = width;
            result.height = height;
            addChild(result);
            return result;
        }
    }
}
textColor属性 
textColor:uint  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

文本字段中文本的颜色(采用十六进制格式)。 十六进制颜色系统使用六位数表示颜色值。 每位数有十六个可能的值或字符。 字符范围从 0 到 9,然后从 A 到 F。例如,黑色是 0x000000;白色是 0xFFFFFF

默认值为 0 (0x000000).


实现
    public function get textColor():uint
    public function set textColor(value:uint):void

示例
如何使用示例

下面的 ActionScript 创建一个 TextField 对象,并将其 textColor 属性更改为 red (0xFF0000)。

package {
    import flash.display.Sprite;
    import flash.text.TextField;

    public class TextField_textColor extends Sprite {
        public function TextField_textColor() {
            var tf:TextField = createTextField(10, 10, 100, 300);
            tf.text = "This will be red text";
            tf.textColor = 0xFF0000;            
        }

        private function createTextField(x:Number, y:Number, width:Number, height:Number):TextField {
            var result:TextField = new TextField();
            result.x = x;
            result.y = y;
            result.width = width;
            result.height = height;
            addChild(result);
            return result;
        }
    }
}
textHeight属性 
textHeight:Number  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

文本的高度,以像素为单位。


实现
    public function get textHeight():Number

另请参见


示例
如何使用示例

下例创建一个 TextField 对象,并为其分配文本。 trace 语句显示 textWidthtextHeight 属性的值。 为了进行比较,还会显示 widthheight 属性。 (请注意,看到的 textHeighttextWidth 值可能会有所不同,这取决于计算机上所用的字体)。

package {
    import flash.display.Sprite;
    import flash.text.TextField;

    public class TextField_textHeight extends Sprite {
        public function TextField_textHeight() {
            var tf:TextField = createTextField(10, 10, 100, 150);
            tf.text = "Sample text";
            
            trace("textWidth: " + tf.textWidth); // textWidth: 55.75
            trace("textHeight: " + tf.textHeight); // textHeight: 13.450000000000001
            trace("width: " + tf.width); // width: 100
            trace("height: " + tf.height); // height: 150
        }

        private function createTextField(x:Number, y:Number, width:Number, height:Number):TextField {
            var result:TextField = new TextField();
            result.x = x;
            result.y = y;
            result.width = width;
            result.height = height;
            result.border = true;
            result.background = true;
            addChild(result);
            return result;
        }
    }
}
textWidth属性 
textWidth:Number  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

文本的宽度,以像素为单位。


实现
    public function get textWidth():Number

另请参见


示例
如何使用示例

下例创建一个 TextField 对象,并为其分配文本。 trace 语句显示 textWidthtextHeight 属性的值。 为了进行比较,还会显示 widthheight 属性。 (请注意,看到的 textHeighttextWidth 值可能会有所不同,这取决于计算机上所用的字体)。

package {
    import flash.display.Sprite;
    import flash.text.TextField;

    public class TextField_textHeight extends Sprite {
        public function TextField_textHeight() {
            var tf:TextField = createTextField(10, 10, 100, 150);
            tf.text = "Sample text";
            
            trace("textWidth: " + tf.textWidth); // textWidth: 55.75
            trace("textHeight: " + tf.textHeight); // textHeight: 13.450000000000001
            trace("width: " + tf.width); // width: 100
            trace("height: " + tf.height); // height: 150
        }

        private function createTextField(x:Number, y:Number, width:Number, height:Number):TextField {
            var result:TextField = new TextField();
            result.x = x;
            result.y = y;
            result.width = width;
            result.height = height;
            result.border = true;
            result.background = true;
            addChild(result);
            return result;
        }
    }
}
thickness属性 
thickness:Number  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

此文本字段中字型边缘的粗细。 仅在 flash.text.AntiAliasType 设置为 flash.text.AntiAliasType.ADVANCED 时才可应用此属性。

thickness 的范围是从 -200 到 200 的一个数字。 如果要尝试将 thickness 设置为该范围外的值,则该属性会设置为范围内最接近的值(-200 或 200)。

默认值为 0.


实现
    public function get thickness():Number
    public function set thickness(value:Number):void

另请参见

type属性 
type:String  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

文本字段的类型。 以下 TextFieldType 常数中的任一个:TextFieldType.DYNAMIC(指定用户无法编辑的动态文本字段),或 TextFieldType.INPUT(指定用户可以编辑的输入文本字段)。

默认值为 dynamic.


实现
    public function get type():String
    public function set type(value:String):void

引发
ArgumentError — 指定的 type 不是 flash.text.TextFieldType 的成员。

另请参见


示例
如何使用示例

下例创建两个文本字段:tfDynamictfInput。 文本输入到两个文本字段中。 但是,tfDynamic 将其 type 属性设置为 TextFieldType.DYNAMIC,而 tfInput 将其 type 属性设置为 TextFieldType.INPUT,所以用户可以修改 tfInput 中的文本,但只能查看 tfDynamic 中的文本。

package {
    import flash.display.Sprite;
    import flash.text.TextField;
    import flash.text.TextFieldType;

    public class TextField_type extends Sprite {
        public function TextField_type() {
            var tfDynamic:TextField = createTextField(10, 10, 100, 20);
            tfDynamic.type = TextFieldType.DYNAMIC;
            tfDynamic.text = "hello";

            var tfInput:TextField = createTextField(10, 45, 100, 20);
            tfInput.type = TextFieldType.INPUT;
            tfInput.text = "world";
        }

        private function createTextField(x:Number, y:Number, width:Number, height:Number):TextField {
            var result:TextField = new TextField();
            result.x = x;
            result.y = y;
            result.width = width;
            result.height = height;
            result.background = true;
            result.border = true;
            addChild(result);
            return result;
        }
    }
}
useRichTextClipboard属性 
useRichTextClipboard:Boolean  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

指定在复制和粘贴文本时是否同时复制和粘贴其格式。 如果设置为 true,则在文本字段之间复制和粘贴时,Flash Player 还将复制和粘贴格式设置(如对齐方式、粗体和斜体)。 复制和粘贴过程中的原始和目标文本字段必须已将 useRichTextClipboard 设置为 true。 默认值为 false


实现
    public function get useRichTextClipboard():Boolean
    public function set useRichTextClipboard(value:Boolean):void
wordWrap属性 
wordWrap:Boolean  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

一个布尔值,指示文本字段是否自动换行。 如果 wordWrap 的值为 true,则该文本字段自动换行;如果值为 false,则该文本字段不自动换行。 默认值为 false


实现
    public function get wordWrap():Boolean
    public function set wordWrap(value:Boolean):void

示例
如何使用示例

下面显示将 wordWrap 属性设置为 true 和将其设置为 false 之间的区别。 创建两个 TextField 实例,它们的内容对于它们的宽度来说太大。 第一个(名为 tfWrap)的 wordWrap 属性设置为 true;第二个 (tfNoWrap) 的此属性设置为 false

package {
    import flash.display.Sprite;
    import flash.text.TextField;

    public class TextField_wordWrap extends Sprite {
        public function TextField_wordWrap() {
            var tfWrap:TextField = createTextField(10, 10, 100, 100);
            tfWrap.wordWrap = true;
            tfWrap.text = "(wordWrap = true):\nThis is very long text that will certainly extend beyond the width of this text field";

            var tfNoWrap:TextField = createTextField(10, 150, 100, 100);
            tfNoWrap.wordWrap = false;
            tfNoWrap.text = "(wordWrap = false):\nThis is very long text that will certainly extend beyond the width of this text field";
        }

        private function createTextField(x:Number, y:Number, width:Number, height:Number):TextField {
            var result:TextField = new TextField();
            result.x = x;
            result.y = y;
            result.width = width;
            result.height = height;
            result.background = true;
            result.border = true;
            addChild(result);
            return result;
        }
    }
}
构造函数详细信息
TextField()构造函数
public function TextField()

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

创建新的 TextField 实例。 在创建 TextField 实例后,调用父 DisplayObjectContainer 对象的 addChild()addChildAt() 方法可将 TextField 实例添加到显示列表中。

文本字段的默认大小是 100 x 100 个像素。

方法详细信息
appendText()方法
public function appendText(newText:String):void

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

newText 参数指定的字符串追加到文本字段的文本的末尾。 此方法要比对 text 属性的加法赋值 (+=)(如 someTextField.text += moreText)更有效,对于包含大量内容的文本字段尤其有效。

参数

newText:String — 要追加到现有文本末尾的字符串。

getCharBoundaries()方法 
public function getCharBoundaries(charIndex:int):Rectangle

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

返回一个矩形,该矩形是字符的边框。

参数

charIndex:int — 从零开始的字符索引值(例如,第一个位置为 0,第二个位置为 1,依此类推)。

返回
Rectangle — 一个矩形,具有定义字符边框的 xy 最小值和最大值。

另请参见

getCharIndexAtPoint()方法 
public function getCharIndexAtPoint(x:Number, y:Number):int

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

xy 参数指定的位置返回从零开始的字符索引值。

参数

x:Number — 字符的 x 坐标。
 
y:Number — 字符的 y 坐标。

返回
int — 从零开始的字符索引值(例如,第一个位置为 0,第二个位置为 1,依此类推)。 如果该位置没有任何字符,则返回 -1。
getFirstCharInParagraph()方法 
public function getFirstCharInParagraph(charIndex:int):int

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

如果给定一个字符索引,则返回同一段落中第一个字符的索引。

参数

charIndex:int — 从零开始的字符索引值(例如,第一个字符的索引值是 0,第二个字符的索引值是 1,依此类推)。

返回
int — 同一段落中从零开始的第一个字符索引值。

引发
RangeError — 指定的字符索引超出范围。
getImageReference()方法 
public function getImageReference(id:String):DisplayObject

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

返回给定 id 或已使用 <img> 标签添加到 HTML 格式文本字段中的图像或 SWF 文件的 DisplayObject 引用。 <img> 标签的格式如下:

 <img src = 'filename.jpg' id = 'instanceName' >

参数

id:String — 要匹配的 id(在 <img> 标签的 id 属性中)。

返回
DisplayObject — 与图像或 SWF 文件(在文本字段的 <img> 标签中具有匹配 id 属性)对应的显示对象。 对于从外部源加载的媒体,此对象是 Loader 对象,加载后,媒体对象是该 Loader 对象的子项。 对于嵌入 SWF 文件的媒体,这是加载的对象。 如果没有具有匹配 id<img> 标签,则此方法返回 null

另请参见

getLineIndexAtPoint()方法 
public function getLineIndexAtPoint(x:Number, y:Number):int

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

xy 参数指定的位置返回从零开始的行索引值。

参数

x:Number — 行的 x 坐标。
 
y:Number — 行的 y 坐标。

返回
int — 从零开始的行索引值(例如,第一行的索引值是 0,第二行的索引值是 1,依此类推)。 如果该位置没有任何行,则返回 -1。
getLineIndexOfChar()方法 
public function getLineIndexOfChar(charIndex:int):int

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

返回 charIndex 参数指定的字符所在的行的索引值(从零开始)。

参数

charIndex:int — 从零开始的字符索引值(例如,第一个字符的索引值是 0,第二个字符的索引值是 1,依此类推)。

返回
int — 从零开始的行索引值。

引发
RangeError — 指定的字符索引超出范围。
getLineLength()方法 
public function getLineLength(lineIndex:int):int

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

返回特定文本行中的字符数。

参数

lineIndex:int — 需要其长度的行号。

返回
int — 行中的字符数。

引发
RangeError — 指定的行号超出范围。
getLineMetrics()方法 
public function getLineMetrics(lineIndex:int):TextLineMetrics

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

返回给定文本行的度量信息。

参数

lineIndex:int — 需要相关度量信息的行号。

返回
TextLineMetrics — 一个 TextLineMetrics 对象。

引发
RangeError — 指定的行号超出范围。

另请参见

getLineOffset()方法 
public function getLineOffset(lineIndex:int):int

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

返回 lineIndex 参数指定的行中第一个字符的字符索引。

参数

lineIndex:int — 从零开始的行索引值(例如,第一行的索引值是 0,第二行的索引值是 1,依此类推)。

返回
int — 行中第一个字符的索引值(从零开始)。

引发
RangeError — 指定的行号超出范围。
getLineText()方法 
public function getLineText(lineIndex:int):String

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

返回 lineIndex 参数指定的行的文本。

参数

lineIndex:int — 从零开始的行索引值(例如,第一行的索引值是 0,第二行的索引值是 1,依此类推)。

返回
String — 指定行中包含的文本字符串。

引发
RangeError — 指定的行号超出范围。
getParagraphLength()方法 
public function getParagraphLength(charIndex:int):int

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

如果给定一个字符索引,则返回包含给定字符的段落的长度。 长度与段落中的第一个字符(由 getFirstCharInParagraph() 返回)有关,与传入的字符索引无关。

参数

charIndex:int — 从零开始的字符索引值(例如,第一个字符的索引值是 0,第二个字符的索引值是 1,依此类推)。

返回
int — 返回段落中的字符数。

引发
RangeError — 指定的字符索引超出范围。

另请参见

getTextFormat()方法 
public function getTextFormat(beginIndex:int = -1, endIndex:int = -1):TextFormat

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

返回 TextFormat 对象,其中包含 beginIndexendIndex 参数指定的文本范围的格式信息。 在生成的 TextFormat 对象中,只设置指定的整个文本共有的属性。 所有混合型属性(意味着它在文本中的不同位置有不同的值)的值都为 null

如果没有为这些参数指定值,则此方法适用于文本字段中的所有文本。

下表描述三种可能的用法:

用法Description
my_textField.getTextFormat()返回一个 TextFormat 对象,该对象包含文本字段中所有文本的格式设置信息。 在结果 TextFormat 对象中只设置文本字段中所有文本共有的属性。 所有混合型属性(意味着它在文本中的不同位置有不同的值)的值都为 null
my_textField.getTextFormat(beginIndex:Number)返回一个 TextFormat 对象,其中包含 beginIndex 位置处字符的文本格式的一个副本。
my_textField.getTextFormat(beginIndex:Number,endIndex:Number)返回一个 TextFormat 对象,该对象包含从 beginIndexendIndex 范围内文本的格式设置信息。 在结果 TextFormat 对象中只设置特定范围内所有文本共有的属性。 所有混合型属性(也就是说,在该范围内的不同位置有不同的值)的值都设置为 null

参数

beginIndex:int (default = -1) — 可选;一个指定文本字段中某段文本起始位置的整数。
 
endIndex:int (default = -1) — 可选;一个指定文本字段中某段文本结束位置的整数。

返回
TextFormat — 表示指定文本格式设置属性的 TextFormat 对象。

引发
RangeError — 指定的 beginIndexendIndex 超出范围。

另请参见

replaceSelectedText()方法 
public function replaceSelectedText(value:String):void

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

使用 value 参数的内容替换当前所选内容。 使用当前默认字符格式和默认段落格式,在当前所选内容的所在位置插入文本。 不将该文本视为 HTML。

可以使用 replaceSelectedText() 方法插入和删除文本,而不破坏其余文本的字符和段落格式。

注意:如果对文本字段应用了样式表,则该方法不起作用。

参数

value:String — 要替换当前所选文本的字符串。


引发
Error — 此方法不能用于具有样式表的文本字段。

另请参见

replaceText()方法 
public function replaceText(beginIndex:int, endIndex:int, newText:String):void

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

使用 newText 参数的内容替换 beginIndexendIndex 参数指定的字符范围。

注意:如果对文本字段应用了样式表,则该方法不起作用。

参数

beginIndex:int — 替换范围的开始位置处从零开始的索引值。
 
endIndex:int — 替换范围的结束位置处从零开始的索引值。
 
newText:String — 要用来替换指定范围字符的文本。


引发
Error — 此方法不能用于具有样式表的文本字段。
setSelection()方法 
public function setSelection(beginIndex:int, endIndex:int):void

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

将第一个字符和最后一个字符的索引值(使用 beginIndexendIndex 参数指定)指定的文本设置为所选内容。 如果两个参数值相同,则此方法会设置插入点,这一点与您设置 caretIndex 属性相同。

参数

beginIndex:int — 所选内容中第一个字符从零开始的索引值(例如,第一个字符的索引值是 0,第二个字符的索引值是 1,依此类推)。
 
endIndex:int — 所选内容中最后一个字符从零开始的索引值。

另请参见

setTextFormat()方法 
public function setTextFormat(format:TextFormat, beginIndex:int = -1, endIndex:int = -1):void

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

format 参数指定的文本格式应用于文本字段中的指定文本。 format 的值必须是指定所需文本格式设置更改的 TextFormat 对象。 只有 format 的非空属性才会应用到文本字段。 不会应用 format 的设置为 null 的任何属性。 默认情况下,新创建的 TextFormat 对象的所有属性都设置为 null

注意:如果对文本字段应用了样式表,则该方法不起作用。

setTextFormat() 方法会更改应用于文本字段中一定范围的字符或整个文本的文本格式设置。 若要将 format 的属性应用于文本字段中的所有文本,请不要指定 beginIndexendIndex 的值。 若要将 format 的属性应用于一定范围的文本,请指定 beginIndexendIndex 参数的值。 可以使用 length 属性来确定索引值。

TextFormat 对象中包含两种类型的格式设置信息:字符级格式设置和段落级格式设置。 文本字段中的每个字符都可以有其自己的字符格式设置,如字体名称、字体大小、粗体和斜体。

对于段落,通过检查段落的第一个字符可了解整个段落的格式设置。 段落格式设置的示例有左边距、右边距和缩进。

用户手动插入的任何文本或通过 replaceSelectedText() 方法替换的任何文本都会接收该文本字段的默认格式设置(而不是为文本插入点指定的格式设置)作为新文本的格式设置。 若要为新文本设置文本字段的默认格式设置,请使用 defaultTextFormat

参数

format:TextFormat — 一个包含字符和段落格式设置信息的 TextFormat 对象。
 
beginIndex:int (default = -1) — 指定所需文本范围内第一个字符的从零开始的索引位置。
 
endIndex:int (default = -1) — 指定所需文本范围内最后一个字符的从零开始的索引位置。

用法Description
my_textField.setTextFormat(textFormat:TextFormat)textFormat 的属性应用于文本字段中的所有文本。
my_textField.setTextFormat(textFormat:TextFormat, beginIndex:int)textFormat 的属性应用于从 beginIndex 处开始的文本。
my_textField.setTextFormat(textFormat:TextFormat, beginIndex:int, endIndex:int)textFormat 参数的属性应用于范围从 beginIndex 处到 endIndex 处的文本。

请注意,用户手动插入的任何文本或通过 replaceSelectedText() 方法替换的任何文本都会接收该文本字段的默认格式设置(而不是为文本插入点处指定的格式设置)作为新文本的格式设置。 若要为新文本设置文本字段的默认格式设置,请使用 defaultTextFormat 属性。


引发
Error — 此方法不能用于具有样式表的文本字段。
 
RangeError — 指定的 beginIndexendIndex 超出范围。

另请参见

事件详细信息
change 事件
事件对象类型: flash.events.Event
Event.type property = flash.events.Event.CHANGE

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

修改控件的值后调度。 将此事件与 textInput 事件对比,后者在修改值之前调度。 与 W3C DOM 事件模型版本的 change 事件(仅在控件失去焦点后调度此事件)不同,每当控件更改时即会调度 ActionScript 3.0 版本的 change 事件。 例如,如果用户向文本字段中键入文本,则在每次键击后调度 change 事件。

定义 change 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblestrue
cancelablefalse;没有要取消的默认行为。
currentTarget当前正在使用某个事件侦听器处理 Event 对象的对象。
target已修改其值的对象。 target 不一定是显示列表中注册此事件侦听器的对象。 请使用 currentTarget 属性来访问显示列表中当前正在处理此事件的对象。
link 事件  
事件对象类型: flash.events.TextEvent
TextEvent.type property = flash.events.TextEvent.LINK

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

当用户单击启用 HTML 的文本字段中的超链接(其中的 URL 以“event:”开头)时调度。 URL 中“event:”后的其余部分将放在 LINK 事件的文本属性中。

注意:仅在 Flash Player 生成此事件时(在本例中,当用户尝试输入文本时发生此事件)才发生默认行为(向文本字段中添加文本)。 无法通过发送 textInput 事件来在文本字段中放置文本。

定义 link 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblestrue
cancelablefalse;没有要取消的默认行为。
currentTarget当前正在使用某个事件侦听器处理 Event 对象的对象。
target包含已单击的超链接的文本字段。 target 不一定是显示列表中注册此事件侦听器的对象。 请使用 currentTarget 属性来访问显示列表中当前正在处理此事件的对象。
textURL 中“event:”之后的其余部分

示例
如何使用示例

在下面的示例中,定义了 playMP3() 函数。 创建一个名为 list 的 TextField 对象,并向其中填充了 HTML 文本。 文本 "Track 1""Track 2" 是文本字段中的链接。 在用户单击任一链接时,调用 playMP3() 函数。 HTML 标签的 href 属性中跟随在字符串“event:”之后的 MP3 文件名将被传递给 linkHandler() 方法,作为 link 事件对象的 text 属性。

package {
    import flash.display.Sprite;
    import flash.errors.IOError;
    import flash.events.IOErrorEvent;
    import flash.events.TextEvent;
    import flash.media.Sound;
    import flash.media.SoundChannel;
    import flash.net.URLRequest;
    import flash.text.TextField;
    import flash.text.TextFieldAutoSize;

    public class TextField_event_link extends Sprite
    {
        private var myMP3:Sound;
        public function TextField_event_link() {
            myMP3 = new Sound();
            var list:TextField = new TextField();
            list.autoSize = TextFieldAutoSize.LEFT;
            list.multiline = true;
            list.htmlText = "<a href=\"event:track1.mp3\">Track 1</a><br>";
            list.htmlText += "<a href=\"event:track2.mp3\">Track 2</a><br>";
            addEventListener(TextEvent.LINK, linkHandler);
            addChild(list);
        }
        
        private function playMP3(mp3:String):void {
            try {    
                myMP3.load(new URLRequest(mp3));
                myMP3.play();
            }
            catch(err:Error) {
                trace(err.message);
            }
            myMP3.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
        }
        
        private function linkHandler(linkEvent:TextEvent):void {
            playMP3(linkEvent.text);
        }
        
        private function errorHandler(errorEvent:IOErrorEvent):void {
            trace(errorEvent.text);
        }
    }
}
scroll 事件  
事件对象类型: flash.events.Event
Event.type property = flash.events.Event.SCROLL

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

用户滚动 由 TextField 对象调度。

定义 scroll 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
currentTarget当前正在使用某个事件侦听器处理 Event 对象的对象。
target已滚动的 TextField 对象。 target 不一定是显示列表中注册此事件侦听器的对象。 请使用 currentTarget 属性来访问显示列表中当前正在处理此事件的对象。
textInput 事件  
事件对象类型: flash.events.TextEvent
TextEvent.type property = flash.events.TextEvent.TEXT_INPUT

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9

用户输入一个或多个文本字符时,Flash Player 将调度 textInput 事件。 许多不同的文本输入法都可以生成此事件,包括标准键盘、输入法编辑器 (IME)、语音识别系统以及粘贴不带格式设置或样式信息的纯文本的行为。

定义 textInput 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblestrue
cancelabletrue;调用 preventDefault() 方法以取消默认行为。
currentTarget当前正在使用某个事件侦听器处理 Event 对象的对象。
target在其中输入字符的文本字段。 target 不一定是显示列表中注册此事件侦听器的对象。 请使用 currentTarget 属性来访问显示列表中当前正在处理此事件的对象。
text用户输入的字符或字符序列。
示例 如何使用示例

下例使用 TextFieldExample 类来显示文本消息。 可通过以下步骤完成该操作:
  1. 创建 TextField 类型的 label 属性。
  2. 类构造函数调用 configureLabel() 函数。
  3. configureLabel() 方法首先创建新的 TextField 对象并将其赋给 label 属性,然后设置其参数如下:
    • 左对齐文本字段。
    • 启用背景填充。
    • 启用边框。
  4. configureLabel() 方法创建 format 变量并将该变量赋给新的 TextFormat 实例,同时如下设置其参数:
    • 字体类型 = 宋体
    • 字体颜色 = 纯红色
    • 字体大小 = 10
    • 字体下划线 = true
  5. label 文本字段的 defaultTextFormat 属性设置为 formatlabel 实例将添加到显示列表中,此显示列表最初在舞台上显示不包含文本的文本字段。
  6. 构造函数将 label 文本字段的文本设置为 "Hello world and welcome to the show." 采用方式是调用 setLabel() 方法。
package {
    import flash.display.Sprite;
    import flash.text.TextField;
    import flash.text.TextFieldAutoSize;
    import flash.text.TextFormat;


    public class TextFieldExample extends Sprite {
        private var label:TextField;
        private var labelText:String = "Hello world and welcome to the show.";

        public function TextFieldExample() {
            configureLabel();
            setLabel(labelText);
        }

        public function setLabel(str:String):void {
            label.text = str;
        }

        private function configureLabel():void {
            label = new TextField();
            label.autoSize = TextFieldAutoSize.LEFT;
            label.background = true;
            label.border = true;

            var format:TextFormat = new TextFormat();
            format.font = "Verdana";
            format.color = 0xFF0000;
            format.size = 10;
            format.underline = true;

            label.defaultTextFormat = format;
            addChild(label);
        }
    }
}




 

评论添加到页面后给我发送电子邮件 | 评论报告

当前页: http://livedocs.adobe.com/flash/9.0_cn/ActionScriptLangRefV3/flash/text/TextField.html