APP下载

Flash课件制作技巧问答

2007-12-29

中小学信息技术教育 2007年6期

  问:用Flash制作课件,怎样才能限制用户在文本框中输入的字符类型呢?
  答:可以使用TextField类的属性。TextField类属于影片类型,可以在Flash“动作”面板中的“ActionScript2.0类”下的“影片”类型中找到。
  TextField类的Restrict属性可以指示用户可输入到文本字段中的字符集。如果Restrict属性值为null,则可以输入任何字符;如果为空字符串,则不能输入任何字符;如果为一串字符,则只能在文本字段中输入该字符串中的字符。可以使用短划线(-)指定一个范围。例如:限制名字为myTxt的输入文本框中只能输入大写字符、空格和数字,则将Restrict属性设置为myTxt.restrict="A-Z 0-9"。
  如果Restrict属性值是以^开头的字符串,则先接受所有字符,再从接受字符集中排除字符串中^之后的字符。例如:限制名字为myTxt的输入文本框中可以输入除小写字母之外的所有字符,则将Restrict属性设置为myTxt.restrict="^a-z"。
  如果制作的Flash课件中包含的输入文本框比较多,而且需要对这些输入文本框对象的输入字符类型统一进行限定,只需将下面的程序代码输入到Flash课件的第1帧,即可达到目的。
  TextField.prototype.onChanged = function() { //所有的文本输入框实例,当输入文本时
  if (this.text != "-" && isNaN(this.text)) { //如果用户输入的不是数字(包括负数)
  this.text = "";//设定文本输入框实例均为空,即不能输入
  }
  }
  其中prototype是对类或函数对象的超类的引用,这样定义的onChanged事件函数可以被所有TextField实例共享。isNaN()函数可用于检查一个数学表达式是否成功地计算为一个数字,如果值为NaN(非数字),则返回true,否则返回false。
  问:在Flash8中,用loadMovie方法将外部Flash课件加载到影片剪辑元件中时,为什么总是不成功?
  答:利用MovieClip类的loadMovie方法可以实现将外部的Flash影片加载到影片剪辑元件中的功能。例如:
  //创建一个空影片剪辑实例,实例名为my MovieClip,深度为1
  _root.createEmptyMovieClip("myMovieCli