flash as3.0问题 就是怎样在非文本类中添加一个元件到舞台上
比如说这个元件as链接是Wenben那我就varMyWenben:Wenben=newWenben()addChild(MyWenben)但这个并没有添加到舞台上如果在文...
比如说 这个元件as链接是 Wenben 那我就var MyWenben:Wenben =new Wenben()
addChild(MyWenben) 但这个并没有添加到舞台上 如果在文本类中写是可以的,,
望高手解释 展开
addChild(MyWenben) 但这个并没有添加到舞台上 如果在文本类中写是可以的,,
望高手解释 展开
展开全部
有两个办法,一个是传递参数。
第二个方法
理解这一过程。
如果你以上代码没有报错的话,可以直接阅读以下文字。
在文本类中你直接调addChild(MyWenben),其实是this.addChild(MyWenben)。
在这里,这个this其实就是指的文本类,而文本类一般都是MovieClip的实例,或者是Sprite的实例。
所以你可以直接调用。
而在非文本类中,如果你这个类是extends MovieClip,那你也可以直接调用addChild。
例如文本类A,非文本类B。
在文本类A中, var b:B=new B();
this.addChild(b);//这句话不能丢,丢了也不会显示。具体阐述起来很麻烦,需要去体会,或者想像成几张白纸,最下面的一张是舞台,舞台上放一张白纸是A,A上面必须也要addChild(b),才能把B放到A上去,然后B上面放东西,也需要addChild。
在非文本类B中,你可以var MyWenben:Wenben =new Wenben()
addChild(MyWenben) 。这样,在舞台上就会显示出来。
如果发生报错,
调用可能未定义的方法 addChild (通过 static 类型 hello 引用)。
那就是另一种问题,(非文本类没有extends MovieClip),
那就追问,给你另一个解决方案。
上面的语句有些啰嗦,毕竟看不到你的源代码,所以不能直接给你找出原因。
第二个方法
理解这一过程。
如果你以上代码没有报错的话,可以直接阅读以下文字。
在文本类中你直接调addChild(MyWenben),其实是this.addChild(MyWenben)。
在这里,这个this其实就是指的文本类,而文本类一般都是MovieClip的实例,或者是Sprite的实例。
所以你可以直接调用。
而在非文本类中,如果你这个类是extends MovieClip,那你也可以直接调用addChild。
例如文本类A,非文本类B。
在文本类A中, var b:B=new B();
this.addChild(b);//这句话不能丢,丢了也不会显示。具体阐述起来很麻烦,需要去体会,或者想像成几张白纸,最下面的一张是舞台,舞台上放一张白纸是A,A上面必须也要addChild(b),才能把B放到A上去,然后B上面放东西,也需要addChild。
在非文本类B中,你可以var MyWenben:Wenben =new Wenben()
addChild(MyWenben) 。这样,在舞台上就会显示出来。
如果发生报错,
调用可能未定义的方法 addChild (通过 static 类型 hello 引用)。
那就是另一种问题,(非文本类没有extends MovieClip),
那就追问,给你另一个解决方案。
上面的语句有些啰嗦,毕竟看不到你的源代码,所以不能直接给你找出原因。
展开全部
代码并没有任何错误,
请检查,你的Wenben内部元素是不是都是透明的,还是一个文本没有初始内容,要么检查坐标值,因为如果元件内的内容都在注册点左上方,你测试后也是看不到的
请检查,你的Wenben内部元素是不是都是透明的,还是一个文本没有初始内容,要么检查坐标值,因为如果元件内的内容都在注册点左上方,你测试后也是看不到的
追问
在文档类中这样写是可以的,但在非文档类中不知道怎么写
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
应该是文档类吧,如果你在一个非文档类中添加一个元件到舞台,那必须传递舞台参数,否则是会报错的,也自然不会在舞台上显示,而且要知道舞台是顶级显示对象,要想向舞台中添加对象必须是stage.addchild(),不能只是addchild()。希望对你有帮助
。
。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询