fl.controls
public class TextInput
继承TextInput Inheritance UIComponent Inheritance Sprite Inheritance DisplayObjectContainer Inheritance InteractiveObject Inheritance DisplayObject Inheritance EventDispatcher Inheritance Object
实现 IFocusManagerComponent
子类 DataGridCellEditor

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

TextInput 组件是单行文本组件,其中包含本机 ActionScript TextField 对象。

在应用程序中,可以启用或禁用 TextInput 组件。 TextInput 组件被禁用以后,便无法接收来自鼠标或键盘的输入。 启用的 TextInput 组件像 ActionScript TextField 对象一样可以实现焦点、选择和导航。

可以使用样式对 TextInput 组件进行自定义,例如,可以在禁用该组件以后更改其外观。 可应用于该组件的一些其它自定义包括使用 HTML 对其进行格式设置,或者将其设置为文本必须隐藏的密码字段。

查看示例

另请参见

TextArea



公共 属性
 属性定义方
 InheritedaccessibilityProperties : AccessibilityProperties
此显示对象的当前辅助功能选项。
DisplayObject
 Inheritedalpha : Number
指示指定对象的 Alpha 透明度值。
DisplayObject
  alwaysShowSelection : Boolean
获取或设置一个布尔值,指示当文本字段不具有焦点时选定内容的显示方式。
TextInput
 InheritedblendMode : String
BlendMode 类中的一个值,用于指定要使用的混合模式。
DisplayObject
 InheritedbuttonMode : Boolean
指定此 sprite 的按钮模式。
Sprite
 InheritedcacheAsBitmap : Boolean
如果设置为 true,则 Flash Player 将缓存显示对象的内部位图表示形式。
DisplayObject
  condenseWhite : Boolean
获取或设置一个布尔值,该值指示是否从包含 HTML 文本的 TextInput 组件中删除额外空白。
TextInput
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
 InheritedcontextMenu : ContextMenu
指定与此对象相关联的上下文菜单。
InteractiveObject
  displayAsPassword : Boolean
获取或设置一个布尔值,该值指示当前创建的 TextInput 组件实例用于包含密码还是文本。
TextInput
 InheriteddoubleClickEnabled : Boolean
指定此对象是否接收 doubleClick 事件。
InteractiveObject
 InheriteddropTarget : DisplayObject
[read-only] 指定拖动 sprite 时经过的显示对象,或放置 sprite 的显示对象。
Sprite
  editable : Boolean
获取或设置一个布尔值,指示用户能否编辑文本字段。
TextInput
  enabled : Boolean
获取或设置一个值,该值指示组件是否可以接受用户交互。
TextInput
 Inheritedfilters : Array
包含当前与显示对象关联的每个滤镜对象的索引数组。
DisplayObject
 InheritedfocusEnabled : Boolean
获取或设置一个布尔值,该值指示组件是否可以在用户单击它后获得焦点。
UIComponent
 InheritedfocusManager : IFocusManager
获取或设置为此组件及其同级组件控制焦点的 FocusManager。
UIComponent
 InheritedfocusRect : Object
指定此对象是否显示焦点矩形。
InteractiveObject
 Inheritedgraphics : Graphics
[read-only] 指定属于此 sprite 的 Graphics 对象,在此 sprite 中可执行矢量绘画命令。
Sprite
 Inheritedheight : Number
获取或设置组件的高度,以像素为单位。
UIComponent
 InheritedhitArea : Sprite
指定一个 sprite 用作另一个 sprite 的点击区域。
Sprite
  horizontalScrollPosition : int
获取或设置水平滚动条的滑块位置。
TextInput
  htmlText : String
包含文本字段所含字符串的 HTML 表示形式。
TextInput
  imeMode : String
获取或设置输入法编辑器 (IME) 的模式。
TextInput
  length : int
[read-only] 获取 TextInput 组件中的字符数。
TextInput
 InheritedloaderInfo : LoaderInfo
[read-only] 返回一个 LoaderInfo 对象,其中包含加载此显示对象所属的文件的相关信息。
DisplayObject
 Inheritedmask : DisplayObject
调用显示对象被指定的 mask 对象遮罩。
DisplayObject
  maxChars : int
获取或设置用户可以在文本字段中输入的最大字符数。
TextInput
  maxHorizontalScrollPosition : int
[read-only] 获取一个值,描述文本字段向右滚动可达到的最远位置。
TextInput
 InheritedmouseChildren : Boolean
确定对象的子项是否支持鼠标。
DisplayObjectContainer
 InheritedmouseEnabled : Boolean
指定此对象是否接收鼠标消息。
InteractiveObject
 InheritedmouseFocusEnabled : Boolean
获取或设置一个值,该值指示组件是否可以在用户单击它后获得焦点。
UIComponent
 InheritedmouseX : Number
[read-only] 指示鼠标位置的 x 坐标,以像素为单位。
DisplayObject
 InheritedmouseY : Number
[read-only] 指示鼠标位置的 y 坐标,以像素为单位。
DisplayObject
 Inheritedname : String
指示 DisplayObject 的实例名称。
DisplayObject
 InheritednumChildren : int
[read-only] 返回此对象的子项数目。
DisplayObjectContainer
 InheritedopaqueBackground : Object
指定显示对象是否由于具有某种背景颜色而不透明。
DisplayObject
 Inheritedparent : DisplayObjectContainer
[read-only] 指示包含此显示对象的 DisplayObjectContainer 对象。
DisplayObject
 Inheritedprototype : Object
[static] 对类或函数对象的原型对象的引用。
Object
  restrict : String
获取或设置文本字段从用户处接受的字符串。
TextInput
 Inheritedroot : DisplayObject
[read-only] 对于加载的 SWF 文件中的显示对象,root 属性是此 SWF 文件所表示的显示列表树结构部分中的顶级显示对象。
DisplayObject
 Inheritedrotation : Number
指示 DisplayObject 实例距其原始方向的旋转程度,以度为单位。
DisplayObject
 Inheritedscale9Grid : Rectangle
当前有效的缩放网格。
DisplayObject
 InheritedscaleX : Number
将组件的当前宽度与缩放系数相乘。
UIComponent
 InheritedscaleY : Number
将组件的当前高度与缩放系数相乘。
UIComponent
 InheritedscrollRect : Rectangle
显示对象的滚动矩形范围。
DisplayObject
  selectionBeginIndex : int
[read-only] 获取包含一个或多个字符的选定内容中第一个所选字符的索引值。
TextInput
  selectionEndIndex : int
[read-only] 获取包含一个或多个字符的选定内容中最后一个所选字符的索引位置。
TextInput
 InheritedsoundTransform : SoundTransform
控制此 sprite 中的声音。
Sprite
 Inheritedstage : Stage
[read-only] 显示对象的舞台。
DisplayObject
 InheritedtabChildren : Boolean
确定对象的子项是否支持 Tab 键。
DisplayObjectContainer
 InheritedtabEnabled : Boolean
指定此对象是否遵循 Tab 键顺序。
InteractiveObject
 InheritedtabIndex : int
指定 SWF 文件中的对象按 Tab 键顺序排列。
InteractiveObject
  text : String
获取或设置字符串,其中包含当前 TextInput 组件中的文本。
TextInput
  textField : TextField
对 TextInput 组件的内部文本字段的引用。
TextInput
  textHeight : Number
[read-only] 文本的高度,以像素为单位。
TextInput
 InheritedtextSnapshot : TextSnapshot
[read-only] 返回此 DisplayObjectContainer 实例的 TextSnapshot 对象。
DisplayObjectContainer
  textWidth : Number
[read-only] 文本的宽度,以像素为单位。
TextInput
 Inheritedtransform : Transform
一个对象,具有与显示对象的矩阵、颜色转换和像素范围有关的属性。
DisplayObject
 InheriteduseHandCursor : Boolean
布尔值,指示当鼠标滑过其 buttonMode 属性设置为 true 的 sprite 时是否显示手指形(手形光标)。
Sprite
 Inheritedversion : String = "3.0.0.13"
组件的版本号。
UIComponent
 Inheritedvisible : Boolean
获取或设置一个值,该值指示当前组件实例是否可见。
UIComponent
 Inheritedwidth : Number
获取或设置组件的宽度(以像素为单位)。
UIComponent
 Inheritedx : Number
获取或设置 x 坐标,该坐标表示组件在其父容器内沿 x 轴的位置。
UIComponent
 Inheritedy : Number
获取或设置 y 坐标,该坐标表示组件在其父容器内沿 y 轴的位置。
UIComponent
公共 方法
 方法定义方
  
创建新的 TextInput 组件实例。
TextInput
 Inherited
将一个 DisplayObject 子实例添加到该 DisplayObjectContainer 实例中。
DisplayObjectContainer
 Inherited
将一个 DisplayObject 子实例添加到该 DisplayObjectContainer 实例中。
DisplayObjectContainer
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。
EventDispatcher
  
将指定字符串追加到 TextArea 所包含的最后一个字符之后。
TextInput
 Inherited
指示安全限制是否会导致出现以下情况:在列表中忽略了使用指定 point 点调用 DisplayObjectContainer.getObjectsUnderPoint() 方法时返回的所有显示对象。
DisplayObjectContainer
 Inherited
删除此组件实例中的样式属性。
UIComponent
 Inherited
确定指定显示对象是 DisplayObjectContainer 实例的子项还是该实例本身。
DisplayObjectContainer
 Inherited
将事件调度到事件流中。
EventDispatcher
  
在此组件上显示或隐藏焦点指示符。
TextInput
 Inherited
启动立即绘制操作,但不像 invalidateNow 那样使全部设置失效。
UIComponent
 Inherited
getBounds(targetCoordinateSpace:DisplayObject):Rectangle
返回一个矩形,该矩形定义相对于 targetCoordinateSpace 对象坐标系的显示对象区域。
DisplayObject
 Inherited
返回位于指定索引处的子显示对象实例。
DisplayObjectContainer
 Inherited
返回具有指定名称的子显示对象。
DisplayObjectContainer
 Inherited
返回 DisplayObject 的 child 实例的索引位置。
DisplayObjectContainer
 Inherited
检索当前具有焦点的对象。
UIComponent
  
检索有关指定文本行的信息。
TextInput
 Inherited
返回对象的数组,这些对象位于指定点下,并且是该 DisplayObjectContainer 实例的子项(或孙子项,依此类推)。
DisplayObjectContainer
 Inherited
getRect(targetCoordinateSpace:DisplayObject):Rectangle
返回一个矩形,该矩形根据 targetCoordinateSpace 参数定义的坐标系定义显示对象的边界,但不包括形状上的任何笔触。
DisplayObject
 Inherited
检索组件的样式查找链中设置的样式属性。
UIComponent
  
[static] 检索当前组件的默认样式映射。
TextInput
 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
invalidate(property:String, callLater:Boolean = true):void
在未另外指定的情况下,将属性标记为无效,并在下一帧上重绘组件。
UIComponent
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
 Inherited
将 point 对象从显示对象的(本地)坐标转换为舞台(全局)坐标。
DisplayObject
 Inherited
[static] 将多个类的样式合并到一个对象中。
UIComponent
 Inherited
将组件移动到其父项内的指定位置。
UIComponent
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
 Inherited
从 DisplayObjectContainer 实例的子列表中删除指定的 child DisplayObject 实例。
DisplayObjectContainer
 Inherited
从 DisplayObjectContainer 的子列表中指定的 index 位置删除子 DisplayObject。
DisplayObjectContainer
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
从 EventDispatcher 对象中删除侦听器。
EventDispatcher
 Inherited
更改现有子项在显示对象容器中的位置。
DisplayObjectContainer
 Inherited
设置此组件的焦点。
UIComponent
 Inherited
设置循环操作动态属性的可用性。
Object
  
setSelection(beginIndex:int, endIndex:int):void
设置在具有焦点的文本区域中选定内容的范围。
TextInput
 Inherited
setSize(width:Number, height:Number):void
将组件设置为指定宽度和高度。
UIComponent
 Inherited
setStyle(style:String, value:Object):void
对此组件实例设置样式属性。
UIComponent
 Inherited
startDrag(lockCenter:Boolean = false, bounds:Rectangle = null):void
允许用户拖动指定的 Sprite。
Sprite
 Inherited
结束 startDrag() 方法。
Sprite
 Inherited
交换两个指定子对象的 Z 轴顺序(从前到后顺序)。
DisplayObjectContainer
 Inherited
swapChildrenAt(index1:int, index2:int):void
在子级列表中两个指定的索引位置,交换子对象的 Z 轴顺序(前后顺序)。
DisplayObjectContainer
 Inherited
返回指定对象的字符串表示形式。
Object
 Inherited
验证并更新此对象的属性和布局,如果需要的话重绘对象。
UIComponent
 Inherited
返回指定对象的原始值。
Object
 Inherited
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。
EventDispatcher
事件
 事件摘要定义方
 Inherited Flash Player 获得操作系统焦点并变为活动状态时调度。EventDispatcher
 Inherited 将显示对象添加到显示列表中时调度。DisplayObject
 Inherited 在将显示对象直接添加到舞台显示列表或将包含显示对象的子树添加至舞台显示列表中时调度。DisplayObject
   当用户在 TextInput 组件中输入更改文本时调度。TextInput
 Inherited 用户在同一 InteractiveObject 上按下并释放用户指针设备的主按钮时调度。InteractiveObject
 Inherited Flash Player 失去操作系统焦点并变为非活动状态时调度。EventDispatcher
 Inherited 如果 InteractiveObject 的 doubleClickEnabled 标志设置为 true,当用户在该对象上快速连续按下两次并释放指针设备的主按钮时调度。InteractiveObject
   当用户按下 Enter 时调度。TextInput
 Inherited 播放头进入新帧时调度。DisplayObject
 Inherited 显示对象获得焦点后调度。InteractiveObject
 Inherited 显示对象失去焦点后调度。InteractiveObject
 Inherited 在组件可见性从可见改为不可见以后调度。UIComponent
 Inherited 用户按下某个键时调度。InteractiveObject
 Inherited 用户尝试使用键盘导航更改焦点时调度。InteractiveObject
 Inherited 用户释放某个键时调度。InteractiveObject
 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 在移动组件以后调度。UIComponent
 Inherited 将要从显示列表中删除显示对象时调度。DisplayObject
 Inherited 在从显示列表中直接删除显示对象或删除包含显示对象的子树时调度。DisplayObject
 Inherited 将要更新和呈现显示列表时调度。DisplayObject
 Inherited 在调整组件大小以后调度。UIComponent
 Inherited 用户将指针设备从 InteractiveObject 实例上移开时调度。InteractiveObject
 Inherited 用户将指针设备移动到 InteractiveObject 实例上时调度。InteractiveObject
 Inherited 在组件可见性从不可见改为可见以后调度。UIComponent
 Inherited 对象的 tabChildren 标志值发生更改时调度。InteractiveObject
 Inherited 对象的 tabEnabled 标志发生更改时调度。InteractiveObject
 Inherited 对象的 tabIndex 属性值发生更改时调度。InteractiveObject
   当用户输入文本时调度。TextInput
样式
 样式说明定义方
  
disabledSkin
类型: Class
当 TextInput 组件的 enabled 属性设置为 false 时用作该组件背景的类的名称。 默认值为 TextInput_disabledSkin.
TextInput
 Inherited 类型: flash.text.TextFormat
用于在禁用了按钮的情况下呈现组件标签的 TextFormat 对象。 默认值为 TextFormat("_sans", 11, 0x999999, false, false, false, '', '', TextFormatAlign.LEFT, 0, 0, 0, 0).
UIComponent
  
embedFonts
类型: Boolean
指示是否使用嵌入字体轮廓呈现文本字段。 如果该值为 true,则 Flash Player 使用嵌入字体轮廓呈现文本字段。 如果该值为 false,则 Flash Player 使用设备字体呈现文本字段。

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

. 默认值为 false.
TextInput
 Inherited 类型: Number   格式: Length
用于分隔组件的外边框和焦点指示符的外边框的填充(以像素为单位)。 默认值为 2.
UIComponent
 Inherited 类型: Class
用于显示焦点指示符的外观。 默认值为 focusRectSkin.
UIComponent
 Inherited 类型: flash.text.TextFormat
用于呈现组件标签的 TextFormat 对象。 默认值为 TextFormat("_sans", 11, 0x000000, false, false, false, '', '', TextFormatAlign.LEFT, 0, 0, 0, 0).
UIComponent
  
textPadding
类型: Number   格式: Length
用于分隔组件边框和文本的填充(以像素为单位)。 默认值为 0.
TextInput
  
upSkin
类型: Class
用作 TextInput 组件背景的类的名称。 默认值为 TextInput_upSkin.
TextInput
属性详细信息
alwaysShowSelection属性
alwaysShowSelection:Boolean  [read-write]

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

获取或设置一个布尔值,指示当文本字段不具有焦点时选定内容的显示方式。

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

默认值为 false.


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

示例
如何使用示例

下例创建一个 TextInput 组件,并使用 setSelection() 方法选择一些文本:

import fl.controls.TextInput;

var myTextInput:TextInput = new TextInput();
myTextInput.text = "The quick brown fox jumped over the lazy dog.";
myTextInput.alwaysShowSelection = true;
myTextInput.setSelection(16, 19);
myTextInput.move(10, 10);
addChild(myTextInput);
condenseWhite属性 
condenseWhite:Boolean  [read-write]

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

获取或设置一个布尔值,该值指示是否从包含 HTML 文本的 TextInput 组件中删除额外空白。 空格和换行符都属于组件中的额外空白。 true 值指示删除多余的空白;false 值指示不删除多余的空白。

此属性只影响使用 htmlText 属性设置的文本,而不影响使用 text 属性设置的文本。 如果使用 text 属性设置文本,则忽略 condenseWhite 属性。

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

默认值为 false.


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

另请参见

displayAsPassword属性 
displayAsPassword:Boolean  [read-write]

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

获取或设置一个布尔值,该值指示当前创建的 TextInput 组件实例用于包含密码还是文本。 true 值指示组件实例为密码文本字段;false 值指示组件实例为正常文本字段。

将此属性设置为 true 时,对于用户在文本字段中输入的每个字符,TextInput 组件实例将显示星号。 此外,“剪切”和“复制”命令及其键盘快捷键将被禁用。 这些措施可防止有人从无人看管的计算机上获取密码。

默认值为 false.


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

另请参见


示例
如何使用示例

下例创建两个 TextInput 组件实例,其中一个实例的 displayAsPassword 属性设置为 true,另一个实例的该属性设置为 false

import fl.controls.Label;
import fl.controls.TextInput;

var usernameLabel:Label = new Label();
usernameLabel.text = "User name:";
usernameLabel.move(10, 10);
addChild(usernameLabel);

var usernameTextInput:TextInput = new TextInput();
usernameTextInput.move(90, 10);
addChild(usernameTextInput);

var passwordLabel:Label = new Label();
passwordLabel.text = "Password:";
passwordLabel.move(10, 40);
addChild(passwordLabel);

var passwordTextInput:TextInput = new TextInput();
passwordTextInput.displayAsPassword = true;
passwordTextInput.move(90, 40);
addChild(passwordTextInput);
editable属性 
editable:Boolean  [read-write]

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

获取或设置一个布尔值,指示用户能否编辑文本字段。 true 值指示用户可以编辑文本字段;false 值指示用户不能编辑文本字段。

默认值为 true.


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

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

获取或设置一个值,该值指示组件是否可以接受用户交互。 true 值指示组件可以接受用户交互;false 值指示组件无法接受用户交互。

如果将 enabled 属性设置为 false,则容器的颜色将变暗,并且禁止用户输入(Label 和 ProgressBar 组件除外)。


实现
    public function get enabled():Boolean
    public function set enabled(value:Boolean):void
horizontalScrollPosition属性 
horizontalScrollPosition:int  [read-write]

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

获取或设置水平滚动条的滑块位置。

默认值为 0.


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

另请参见


示例
如何使用示例

下例创建一个 TextInput 组件实例,并显示其 horizontalScrollPositionmaxHorizontalScrollPosition 属性的当前值:

import fl.controls.Label;
import fl.controls.Slider;
import fl.controls.TextInput;
import fl.events.SliderEvent;

var myTextInput:TextInput = new TextInput();
myTextInput.text = "The quick brown fox jumped over the lazy dog.";
myTextInput.width = 120;
myTextInput.move(10, 10);
myTextInput.addEventListener(Event.CHANGE, textInputChangeHandler);
myTextInput.textField.addEventListener(Event.SCROLL, scrollHandler);
addChild(myTextInput);

var mySlider:Slider = new Slider();
mySlider.snapInterval = 1;
mySlider.tickInterval = 10;
mySlider.minimum = 0;
mySlider.maximum = myTextInput.maxHorizontalScrollPosition;
mySlider.value = myTextInput.horizontalScrollPosition;
mySlider.liveDragging = true;
mySlider.addEventListener(SliderEvent.CHANGE, sliderChangeHandler);
mySlider.width = 120;
mySlider.move(10, 40);
addChild(mySlider);

var myLabel:Label = new Label();
myLabel.autoSize = TextFieldAutoSize.LEFT;
myLabel.text = "";
myLabel.move(10, 50);
addChild(myLabel);

getScrollPosition();

function getScrollPosition():void {
    myTextInput.drawNow();
    var scrollPos:uint = myTextInput.horizontalScrollPosition;
    var maxScrollPos:uint = myTextInput.maxHorizontalScrollPosition;
    myLabel.text = "scrollPosition: " + scrollPos + " of " + maxScrollPos;
    mySlider.value = scrollPos;
    mySlider.maximum = maxScrollPos;
}

function scrollHandler(event:Event):void {
    getScrollPosition();
}

function sliderChangeHandler(event:SliderEvent):void {
    myTextInput.horizontalScrollPosition = event.value;
    getScrollPosition();
}

function textInputChangeHandler(event:Event):void {
    getScrollPosition();
}
htmlText属性 
htmlText:String  [read-write]

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

包含文本字段所含字符串的 HTML 表示形式。

默认值为 "".


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

另请参见


示例
如何使用示例

下例创建一个不可编辑的 TextInput 组件,并设置 htmlText 属性以将 HTML 格式应用于文本字段的文本:

import fl.controls.TextInput;

var myTextInput:TextInput = new TextInput();
myTextInput.editable = false;
myTextInput.enabled = false;
myTextInput.htmlText = "(<i>auto assigned</i>)";
myTextInput.move(10, 10);
addChild(myTextInput);
imeMode属性 
imeMode:String  [read-write]

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

获取或设置输入法编辑器 (IME) 的模式。 IME 使用户能够使用 QWERTY 键盘从中文、日文和韩文字符集输入字符。

Flash 在组件获得焦点时将 IME 设置为指定模式,并在组件失去焦点后还原为初始值。

flash.system.IMEConversionMode 类定义此属性的有效值的常量。 将此属性设置为 null 阻止对组件使用 IME。


实现
    public function get imeMode():String
    public function set imeMode(value:String):void
length属性 
length:int  [read-only]

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

获取 TextInput 组件中的字符数。

默认值为 0.


实现
    public function get length():int

另请参见


示例
如何使用示例

下例创建一个 TextInput 组件,并设置其 maxCharsrestrict 属性以限制可输入的字符数:

import fl.controls.Label;
import fl.controls.TextInput;

var myTextInput:TextInput = new TextInput();
myTextInput.restrict = "0-9A-F";
myTextInput.maxChars = 6;
myTextInput.move(10, 10);
myTextInput.addEventListener(Event.CHANGE, changeHandler);
addChild(myTextInput);

var myLabel:Label = new Label();
myLabel.autoSize = TextFieldAutoSize.LEFT;
myLabel.text = myTextInput.length + " of " + myTextInput.maxChars;
myLabel.move(10, 30);
addChild(myLabel);

function changeHandler(event:Event):void {
    myLabel.text = myTextInput.length + " of " + myTextInput.maxChars;
}
maxChars属性 
maxChars:int  [read-write]

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

获取或设置用户可以在文本字段中输入的最大字符数。

默认值为 0.


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

另请参见


示例
如何使用示例

下例创建一个 TextInput 组件,并设置其 maxCharsrestrict 属性以限制可输入的字符数:

import fl.controls.Label;
import fl.controls.TextInput;

var myTextInput:TextInput = new TextInput();
myTextInput.restrict = "0-9A-F";
myTextInput.maxChars = 6;
myTextInput.move(10, 10);
myTextInput.addEventListener(Event.CHANGE, changeHandler);
addChild(myTextInput);

var myLabel:Label = new Label();
myLabel.autoSize = TextFieldAutoSize.LEFT;
myLabel.text = myTextInput.length + " of " + myTextInput.maxChars;
myLabel.move(10, 30);
addChild(myLabel);

function changeHandler(event:Event):void {
    myLabel.text = myTextInput.length + " of " + myTextInput.maxChars;
}
maxHorizontalScrollPosition属性 
maxHorizontalScrollPosition:int  [read-only]

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

获取一个值,描述文本字段向右滚动可达到的最远位置。

默认值为 0.


实现
    public function get maxHorizontalScrollPosition():int

另请参见

restrict属性 
restrict:String  [read-write]

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

获取或设置文本字段从用户处接受的字符串。 请注意,未包含在本字符串中的以编程方式输入的字符也为文本字段所接受。

字符串中字符的读取顺序为从左到右。 可以使用连字符 (-) 指定一个字符范围。

如果此属性的值为 null,则文本字段会接受所有字符。 如果此属性设置为空字符串 (""),则文本字段不接受任何字符。

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

默认值为 null.


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

另请参见

selectionBeginIndex属性 
selectionBeginIndex:int  [read-only]

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

获取包含一个或多个字符的选定内容中第一个所选字符的索引值。

所选字符的索引位置为从零开始并由文本区域中显示的第一个字符开始计算。 如果未选择任何内容,则该值将设置为尖号的位置。

默认值为 0.


实现
    public function get selectionBeginIndex():int

另请参见


示例
如何使用示例

下例创建一个 Label 组件,该组件显示 TextInput 组件的 selectionBeginIndexselectionEndIndex 属性。 此外,此示例还创建两个 Slider 组件实例,以使用 setSelection() 方法以编程方式设置所选内容的开始索引和结束索引:

import fl.controls.Label;
import fl.controls.Slider;
import fl.controls.TextInput;
import fl.events.SliderEvent;

var myTextInput:TextInput = new TextInput();
myTextInput.alwaysShowSelection = true;
myTextInput.text = "The quick brown fox jumped over the lazy dog.";
myTextInput.width = 120;
myTextInput.move(10, 10);
myTextInput.addEventListener(Event.CHANGE, changeHandler);
myTextInput.addEventListener(FocusEvent.FOCUS_IN, focusInHandler);
myTextInput.addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler);
addChild(myTextInput);

var myLabel:Label = new Label();
myLabel.autoSize = TextFieldAutoSize.LEFT;
myLabel.text = "";
myLabel.move(10, 30);
addChild(myLabel);

var beginSlider:Slider = new Slider();
beginSlider.maximum = myTextInput.length;
beginSlider.snapInterval = 1;
beginSlider.liveDragging = true;
beginSlider.width = 120;
beginSlider.move(10, 65);
beginSlider.addEventListener(SliderEvent.CHANGE, beginChangeHandler);
addChild(beginSlider);

var endSlider:Slider = new Slider();
endSlider.maximum = myTextInput.length;
endSlider.snapInterval = 1;
endSlider.liveDragging = true;
endSlider.width = 120;
endSlider.move(10, 85);
endSlider.addEventListener(SliderEvent.CHANGE, endChangeHandler);
addChild(endSlider);

var t:Timer = new Timer(50);
t.addEventListener(TimerEvent.TIMER, timerHandler);

function changeHandler(event:Event):void {
    beginSlider.maximum = myTextInput.length;
    endSlider.maximum = myTextInput.length;
    updateUI();
}

function focusInHandler(event:FocusEvent):void {
    t.start();
}

function focusOutHandler(event:FocusEvent):void {
    t.stop();
}

function beginChangeHandler(event:SliderEvent):void {
    myTextInput.setSelection(event.value, myTextInput.selectionEndIndex);
    updateUI();
}

function endChangeHandler(event:SliderEvent):void {
    myTextInput.setSelection(myTextInput.selectionBeginIndex, event.value);
    updateUI();
}

function timerHandler(event:TimerEvent):void {
    updateUI();
}

function updateUI():void {
    myLabel.text = "selectionBeginIndex:" + myTextInput.selectionBeginIndex + "\n";
    myLabel.text += "selectionEndIndex:" + myTextInput.selectionEndIndex;
    beginSlider.value = myTextInput.selectionBeginIndex;
    endSlider.value = myTextInput.selectionEndIndex;
}
selectionEndIndex属性 
selectionEndIndex:int  [read-only]

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

获取包含一个或多个字符的选定内容中最后一个所选字符的索引位置。

所选字符的索引位置为从零开始并由文本区域中显示的第一个字符开始计算。 如果未选择任何内容,则该值将设置为尖号的位置。

默认值为 0.


实现
    public function get selectionEndIndex():int

另请参见

text属性 
text:String  [read-write]

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

获取或设置字符串,其中包含当前 TextInput 组件中的文本。 此属性包含无格式文本,不包含 HTML 标签。 若要检索格式为 HTML 的文本,请使用 htmlText 属性。

默认值为 "".


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

另请参见

textField属性 
public var textField:TextField

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

对 TextInput 组件的内部文本字段的引用。


示例
如何使用示例

下例创建一个 TextInput 组件实例,使用 textField 属性访问基础本机 ActionScript TextField 对象,并调用其 replaceText() 方法:

import fl.controls.TextInput;

var myTextInput:TextInput = new TextInput();
myTextInput.text = "The quick brown fox jumped over the lazy dog.";
myTextInput.textField.replaceText(41, 44, "fox");
myTextInput.textField.replaceText(16, 19, "dog");
addChild(myTextInput);
textHeight属性 
textHeight:Number  [read-only]

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

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

默认值为 0.


实现
    public function get textHeight():Number

另请参见

textWidth属性 
textWidth:Number  [read-only]

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

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

默认值为 0.


实现
    public function get textWidth():Number

另请参见


示例
如何使用示例

下例创建一个 TextInput 组件实例,每当文本字段的内容发生更改时就输出 textWidthtextHeight 属性:

import fl.controls.TextInput;

var myTextInput:TextInput = new TextInput();
myTextInput.move(10, 10);
myTextInput.addEventListener(Event.CHANGE, changeHandler);
addChild(myTextInput);

function changeHandler(event:Event):void {
    trace("textWidth:" + myTextInput.textWidth + ", textHeight:" + myTextInput.textHeight);
}
构造函数详细信息
TextInput()构造函数
public function TextInput()

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

创建新的 TextInput 组件实例。

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

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

将指定字符串追加到 TextArea 所包含的最后一个字符之后。 与通过对 text 属性使用加法赋值来连接两个字符串(例如 myTextArea.text += moreText)相比,此方法的效率更高。 此方法在 TextInput 组件包含大量内容时特别有用。

参数

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

drawFocus()方法 
public override function drawFocus(focused:Boolean):void

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

在此组件上显示或隐藏焦点指示符。

UIComponent 类通过创建并放置 focusSkin 样式指定的类的实例来实现该方法。

参数

focused:Boolean — 指示是显示还是隐藏焦点指示符。 如果该值为 true,则显示焦点指示符;如果该值为 false,则隐藏焦点指示符。

getLineMetrics()方法 
public function getLineMetrics(index:int):TextLineMetrics

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

检索有关指定文本行的信息。

参数

index:int — 要检索的信息所在行的行号。

返回
TextLineMetrics

示例
如何使用示例

下例在文本输入相对于基线的上升值上绘制一个红色矩形,在文本输入相对于基线的下降值上绘制一个蓝色矩形。
var format:TextFormat = new TextFormat();
format.size = 72;
format.font = "Georgia";

import fl.controls.TextInput;

var ti:TextInput = new TextInput();
addChild(ti);
ti.setSize(393,82);
ti.move(10,10);
ti.setStyle("textFormat",format);
ti.text = "Hello World";
ti.drawNow();

var metrics:TextLineMetrics = ti.getLineMetrics(0);

var ascenderColoring:Shape = new Shape();
var descenderColoring:Shape = new Shape();
ti.addChild(ascenderColoring);
ti.addChild(descenderColoring);

ascenderColoring.graphics.clear();
ascenderColoring.graphics.beginFill(0xFF0000,0.2);
ascenderColoring.graphics.drawRect(0, 0, metrics.width, metrics.ascent);
descenderColoring.graphics.clear();
descenderColoring.graphics.beginFill(0x0000FF,0.2);
descenderColoring.graphics.drawRect(0, metrics.ascent + 2, metrics.width, metrics.descent);
getStyleDefinition()方法 
public static function getStyleDefinition():Object

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

检索当前组件的默认样式映射。 样式映射包含适合组件的类型,具体取决于组件使用的样式。 例如,disabledTextFormat 样式包含 null 值或 TextFormat 对象。 可以使用这些样式并对当前组件调用 setStyle()。 下面的代码覆盖指定组件上默认的 disabledTextFormat 样式:
componentInstance.setStyle("disabledTextFormat", new TextFormat());

返回
Object — 默认样式对象。

另请参见


示例
如何使用示例

下例为多个组件类创建一个样式浏览器:
import fl.controls.*;
import fl.containers.*;
import fl.controls.listClasses.*;
import fl.controls.dataGridClasses.*;
import fl.controls.progressBarClasses.*;
import fl.core.UIComponent;
import fl.data.DataProvider;

var dp:DataProvider = new DataProvider();
dp.addItem( { label: "BaseScrollPane",    data:BaseScrollPane } );
dp.addItem( { label: "Button",             data:Button } );
dp.addItem( { label: "CellRenderer",    data:CellRenderer } );
dp.addItem( { label: "CheckBox",         data:CheckBox } );
dp.addItem( { label: "ColorPicker",     data:ColorPicker } );
dp.addItem( { label: "ComboBox",         data:ComboBox } );
dp.addItem( { label: "DataGrid",         data:DataGrid } );
dp.addItem( { label: "HeaderRenderer",    data:HeaderRenderer } );
dp.addItem( { label: "ImageCell",        data:ImageCell } );
dp.addItem( { label: "IndeterminateBar",data:IndeterminateBar } );
dp.addItem( { label: "Label",             data:Label } );
dp.addItem( { label: "List",             data:List } );
dp.addItem( { label: "NumericStepper",     data:NumericStepper } );
dp.addItem( { label: "ProgressBar",     data:ProgressBar } );
dp.addItem( { label: "RadioButton",     data:RadioButton } );
dp.addItem( { label: "ScrollPane",         data:ScrollPane } );
dp.addItem( { label: "Slider",             data:Slider } );
dp.addItem( { label: "TextArea",         data:TextArea } );
dp.addItem( { label: "TextInput",         data:TextInput } );
dp.addItem( { label: "TileList",         data:TileList } );
dp.addItem( { label: "UILoader",         data:UILoader } );
dp.addItem( { label: "UIComponent",     data:UIComponent } );

var cb:ComboBox = new ComboBox();
cb.move(10,10);
cb.setSize(300,25);
cb.prompt = "Select a component to view its styles";
cb.rowCount = 12;
cb.dataProvider = dp;
cb.addEventListener(Event.CHANGE, showStyleDefinition);
addChild(cb);

var dg:DataGrid = new DataGrid();
dg.setSize(425,300);
dg.move(10,50);
dg.columns = [ new DataGridColumn("StyleName"), new DataGridColumn("DefaultValue") ];
addChild(dg);

function showStyleDefinition(e:Event):void {
    var componentClass:Class = e.target.selectedItem.data as Class;
    var styles:Object = componentClass["getStyleDefinition"].call(this);
    trace(styles.toString());
    var styleData:DataProvider = new DataProvider();
    for(var i:* in styles) {
        trace(i + " : " + styles[i]);
        styleData.addItem( { StyleName:i, DefaultValue:styles[i] } );
    }
    styleData.sortOn("StyleName");
    dg.dataProvider = styleData;
}
setSelection()方法 
public function setSelection(beginIndex:int, endIndex:int):void

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

设置在具有焦点的文本区域中选定内容的范围。 选定内容的范围从由 start 参数指定的索引处开始,到由 end 参数指定的索引处结束。 如果指定选定内容范围的参数值相同,则此方法会设置文本插入点,设置方式与 caretIndex 属性相同。

选定的文本被视为从零开始的一串字符,其中第一个选定字符位于索引 0 处,第二个字符位于索引 1 处,依此类推。

如果文本字段不具有焦点,则此方法无效。

参数

beginIndex:int — 选定内容中第一个字符的索引位置。
 
endIndex:int — 选定内容中最后一个字符的索引位置。

另请参见


示例
如何使用示例

下例在 TextInput 实例中输入文本,并将所选内容设置为第二个字:
import fl.controls.TextInput;

var ti:TextInput = new TextInput();
addChild(ti);
ti.text = "Hello World";
ti.setFocus();
ti.setSelection(6, 11);

下例创建一个 TextInput 组件,并使用 setSelection() 方法选择一些文本:

import fl.controls.TextInput;

var myTextInput:TextInput = new TextInput();
myTextInput.text = "The quick brown fox jumped over the lazy dog.";
myTextInput.alwaysShowSelection = true;
myTextInput.setSelection(16, 19);
myTextInput.move(10, 10);
addChild(myTextInput);
事件详细信息
change 事件
事件对象类型: flash.events.Event
Event.type property = flash.events.Event.CHANGE

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

当用户在 TextInput 组件中输入更改文本时调度。

注意:如果使用 ActionScript 更改文本,则不会发生此事件。

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

此事件具有以下属性:

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

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

当用户按下 Enter 时调度。

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

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
currentTarget当前正在使用某个事件侦听器处理事件对象的对象。
target调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。
textInput 事件  
事件对象类型: flash.events.TextEvent
TextEvent.type property = flash.events.TextEvent.TEXT_INPUT

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

当用户输入文本时调度。

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

此事件具有以下属性:

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

此示例演示如何使用 TextInput 组件构建一个基本的登录系统。

若要运行该示例,请按照下列步骤操作:

  1. 将 TextInput、Label 和 Button 组件添加到库中。
  2. 将该代码作为 TextInputExample.as 另存到 FLA 文件所在的同一目录中。
  3. 将 FLA 文件中的 Document 类设置为 TextInputExample。
package 
{
    import fl.controls.Button;
    import fl.controls.Label;
    import fl.controls.TextInput;
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.events.MouseEvent;
    import flash.text.TextFieldAutoSize;    
    
    public class TextInputExample extends Sprite
    {
        private var ti1:TextInput;
        private var ti2:TextInput;
        private var label1:Label;
        private var label2:Label;
        private var submitBtn:Button;
        
        public function TextInputExample() {
            setupLabels();
            setupInputFields();    
            setupButton();
        }
        private function setupInputFields():void {
            ti1 = new TextInput();
            ti2 = new TextInput();
            ti1.move(50,10);
            ti2.move(50,40);
            ti2.displayAsPassword = true;
            ti1.addEventListener(Event.CHANGE, textEntered);
            ti2.addEventListener(Event.CHANGE, textEntered);
            addChild(ti1);
            addChild(ti2);
        }
        private function setupLabels():void {
            label1 = new Label();
            label2 = new Label();
            label1.move(10,10);
            label2.move(10,40);
            label1.text = "User:";
            label2.text = "Pass:"
            addChild(label1);
            addChild(label2);
        }
        private function setupButton():void {
            submitBtn = new Button();
            submitBtn.move(150,70);
            submitBtn.label = "Go";
            submitBtn.enabled = false;
            submitBtn.setSize(50,20);
            submitBtn.addEventListener(MouseEvent.CLICK, submitLogin);
            addChild(submitBtn);
        }
        private function textEntered(e:Event):void {
            if(ti1.text != "" && ti2.text != "") {
                submitBtn.enabled = true;
            }
            else {
                submitBtn.enabled = false;    
            }
        }
        private function submitLogin(e:MouseEvent):void {
            var submitLabel:Label = new Label();
            submitLabel.move(10,70);
            submitLabel.autoSize = TextFieldAutoSize.LEFT;
            submitLabel.text = "Login has been submitted."
            addChild(submitLabel);
            submitBtn.removeEventListener(MouseEvent.CLICK, submitLogin);
        }
    }
}




 

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

当前页: http://livedocs.adobe.com/flash/9.0_cn/ActionScriptLangRefV3/fl/controls/TextInput.html