actionscript-3:检查movieClip是否存在
我用以下代码创建了一个movieclip:actionscript-3:检查movieClip是否存在,actionscript-3,Actionscript 3,我用以下代码创建了一个movieclip: var thumbContainer:MovieClip = new MovieClip(); thumbContainer.name = "thumbContainer"; stage.addChild (thumbContainer); 如果窗户变大/变小,我希望所有东西都恢复原位。所以我有一个舞台事件监听器。现在,我想看看这个mc是否存在,是否可以放回原位。我尝试过不同的方法,但不断得到一个不存在的错误 1120:访问未定义的属性thumbCo
var thumbContainer:MovieClip = new MovieClip();
thumbContainer.name = "thumbContainer";
stage.addChild (thumbContainer);
如果窗户变大/变小,我希望所有东西都恢复原位。所以我有一个舞台事件监听器。现在,我想看看这个mc是否存在,是否可以放回原位。我尝试过不同的方法,但不断得到一个不存在的错误
1120:访问未定义的属性thumbContainer。
if (this.getChildByName("thumbContainer") != null) {
trace("exists")
}
及
或
您正在将thumbContainer
添加到stage
中,并使用this
检查它是否存在。将stage
更改为this
或this
更改为stage
也就是说,更合适的方法是保留对添加的电影剪辑的引用,并使用该方法检查是否存在。它确定指定的显示对象是DisplayObjectContainer
实例的子对象还是实例本身。搜索包括整个显示列表,包括此DisplayObjectContainer
实例、孙辈、曾孙辈等
因此,您可以使用stage.contains(thumbContainer)轻松地进行检查代码>
您正在将thumbContainer
添加到stage
中,并使用this
检查它是否存在。将stage
更改为this
或this
更改为stage
也就是说,更合适的方法是保留对添加的电影剪辑的引用,并使用该方法检查是否存在。它确定指定的显示对象是DisplayObjectContainer
实例的子对象还是实例本身。搜索包括整个显示列表,包括此DisplayObjectContainer
实例、孙辈、曾孙辈等
因此,您可以使用stage.contains(thumbContainer)轻松地进行检查代码>问题是“舞台”和“这个”不一样……这就是为什么我不能和主持人交谈的原因。
这项工作:
var thumbContainer:MovieClip = new MovieClip();
thumbContainer.name = "thumbContainer";
addChild (thumbContainer);
if (getChildByName("thumbContainer") != null) {
trace("exists")
}
问题是“舞台”和“这个”是不一样的……这就是为什么我不能和主持人交谈的原因。
这项工作:
var thumbContainer:MovieClip = new MovieClip();
thumbContainer.name = "thumbContainer";
addChild (thumbContainer);
if (getChildByName("thumbContainer") != null) {
trace("exists")
}
如果您在发射错误时遇到问题,您可以随时尝试捕获
try{
/// do something that will blow up...
}catch( e:Error ){
trace( "we had an error but its not fatal now..." );
}
如果您在发射错误时遇到问题,您可以随时尝试捕获
try{
/// do something that will blow up...
}catch( e:Error ){
trace( "we had an error but its not fatal now..." );
}
我的支票有效,所以我可以检查mc是否存在,但现在我想用它做点什么。此(实例名称)无效:var thumbContainer:MovieClip=new MovieClip();thumbContainer.name=“测试”;thumbContainer.x=10;stage.addChild(thumbContainer);如果(this.getChildByName(“test”)==null){trace(“something”);//有效!this.getChildByName(“test”).x=10;//无效!stage.test.x=10;//无效!}那么我的检查有效,因此我可以检查mc是否存在,但现在我想对它做些什么。此(实例名称)无效:var thumbContainer:MovieClip=new MovieClip();thumbContainer.name=“测试”;thumbContainer.x=10;stage.addChild(thumbContainer);如果(this.getChildByName(“test”)==null){trace(“something”);//有效!this.getChildByName(“test”).x=10;//无效!stage.test.x=10;//无效!}您应该将Amarghosh标记为正确答案,因为您的解决方案基于他的答案。发布完整的解决方案以展示您如何解决最初描述的问题是可以的。但通常情况下,你会将自己标记为答案的作者,因为它实际上是基于另一个答案,这有助于你找到解决方案。所以如果没有,你会被卡住。因此,请相信原作者,即使他没有提供您需要的确切行数-这显然是不可能的,因为我们都没有您的完整代码。您应该将Amarghosh标记为正确答案,因为您的解决方案基于他的答案。发布完整的解决方案以展示您如何解决最初描述的问题是可以的。但通常情况下,你会将自己标记为答案的作者,因为它实际上是基于另一个答案,这有助于你找到解决方案。所以如果没有,你会被卡住。因此,请相信原作者,即使他没有提供您需要的确切行数-这显然是不可能的,因为我们都没有您的完整代码。经过大量研究,只有此解决方案对我有效:)经过大量研究,只有此解决方案对我有效:)
try{
/// do something that will blow up...
}catch( e:Error ){
trace( "we had an error but its not fatal now..." );
}