动态创建和删除文本字段

可以使用 MovieClip 对象的 createTextField 方法来创建一个新的空文本字段,将它作为调用该方法的影片剪辑的子项。可以使用 removeTextField 方法删除用 createTextField 创建的文本字段;该方法对于在时间轴上手动创建的文本字段并不起作用。

当您创建文本字段时,可以使用 TextField 对象来设置该文本字段的属性。如果不设置属性,新文本字段将接收一组默认属性。新文本字段的默认属性如下:

type = "dynamic"
border = false
background = false
password = false
multiline = false
html = false
embedFonts = false
variable = null
maxChars = null

创建了文本字段之后,就可以使用 TextFormat 对象来格式化文本。您必须创建一个新的 TextFormat 对象,然后将它作为参数传递给 TextField 对象的 setTextFormat 方法。用 createTextField 方法创建的文本字段会接收到下面的默认 TextFormat 对象:

font = "Times New Roman"
size = 12
color = 0x000000
bold = false
italic = false
underline = false
url = ""
target = ""
align = "left"
leftMargin = 0
rightMargin = 0
indent = 0
leading = 0
bullet = false
tabStops = [] (empty array)

创建动态文本字段:

  1. 选择将接收该操作的帧、按钮或影片剪辑。
  2. 选择“窗口”>“开发面板”>“动作”以打开“动作”面板(如果尚未打开)。
  3. 在“动作”工具箱中,选择“内置类”类别,然后选择 MovieClip 类别,接着选择“方法”类别。最后双击 createTextField 方法。
  4. 选择占位符 instanceName 并为将作为新文本字段的父级的影片剪辑输入一个实例名或者路径。对于本示例,输入别名 _root,这是因为主时间轴是父级。
  5. 输入下列参数的值:
    • Instance Name 是新文本字段的实例名称。对于本示例,输入 myText
    • Depth 是指定层叠顺序的数字。对于本示例,输入 1
    • X 是相对于父级剪辑的 x 轴坐标。对于本示例,输入 50
    • Y 是相对于父级剪辑的 y 轴坐标。对于本示例,输入 50

    “脚本”窗格中会显示如下代码:

    _root.createTextField("mytext",1,50,50,200,100);
    
  6. 在“动作”工具箱中,选择“内置类”类别,然后选择“影片”类别、“文本域”类别,接着选择“属性”类别。最后,双击文本属性创建一个新行。对于本例,请使用“对象”参数字段中的 myText 替换占位符 instanceName。
  7. 在“值”字段中,输入这是我的第一个文本字段对象文本。脚本窗格中会显示如下文本:
    mytext.text = "this is my first text field object text";
    

    本示例创建了这样一个文本字段:实例名称为 myText、深度为 1、宽度为 200、高度为 100、x 值为 50、y 值为 50。

有关“文本域”对象的 createTextField 方法的详细介绍,请参阅TextField 类