应用思考-教育技术论坛

标题: 关于flashCS4中运用AS3文件的疑问。。 [打印本页]

作者: shiny    时间: 2012-7-21 11:01
标题: 关于flashCS4中运用AS3文件的疑问。。
我想要做的是通过调用外部AS3文件,使fla文件中的label显示我想要的东西。

package
{
import flash.display.MovieClip;

public class hello extends MovieClip
{
  public function hello()
  {
   
  }
  public function text(ss:String):String
  {
   var hellostr:String = "welcome";
   return ss + hellostr;
  }
}

}
以上是我as文件的源代码。

var newhello:hello=new hello();
label.text=newhello.text("me");
这个是我在flashCS4中时间轴上的代码。

为什么运行的时候一直显示的是
Error: Error #2136: SWF 文件 …swf 包含无效数据。
at hello/frame1()


作者: etthink    时间: 2012-7-27 16:28
哪里看到调用外部文件了...label组件类也没有看到导入
作者: laolaotang    时间: 2012-7-28 08:43
从代码上看是没什么问题的。舞台上要确保有名为lable的动态文本框。
这是按你的思路写的加载外部文本的代码(已在FLASHCS4下调试):
hello.as
package {
        import flash.display.MovieClip;
        import flash.events.Event;
        import flash.net.*;
        import flash.text.TextField;
        public class hello extends MovieClip {
                public function hello() {

                }
                public function text(ss:String):String {
                        var hellostr:String="welcome";
                        return ss + hellostr;
                }
                public function loadText(url:String,tf:TextField){
                        var ul:URLLoader=new URLLoader();
                        ul.load(new URLRequest(url));
                        ul.addEventListener(Event.COMPLETE,function (e:Event){                               
                tf.text=e.target.data;
                                }
                        );
                }
        }

}
hello.fla时间轴代码:
var newhello:hello=new hello();
newhello.loadText("test.txt",label);
test.txt文本内容(注意,该文本文件格式为UTF8,否则可能会出现中文乱码):
我是外部文件.......
圣殿杯在鸟巢落幕,阿森纳0-2不敌曼城,赛后主帅温格出席了新闻发布会。发布会上一名英国记者一再询问范佩西的转会直接惹怒了教授,两人更是在现场进行唇枪舌剑地对峙,发布会也在这种紧张的气氛中结束。
对于本场比赛的失利,温格认为得到锻炼就足够了,“阿森纳控制了上半场大部分的时间,临到中场时突然0-2落后打乱了比赛节奏;曼城的后防线表现出色,而阿森纳组织进攻时间太过于拖沓。这样的比赛的意义在于让每个球员都有机会上场,让球员得到锻炼。”





欢迎光临 应用思考-教育技术论坛 (http://etthink.com/) Powered by Discuz! X3.4