【问题标题】:removing parent and children in flash AS3?在 Flash AS3 中删除父母和孩子?
【发布时间】:2015-01-04 17:51:18
【问题描述】:

我正在尝试使用 AS3 在我的 Flash 文件中删除 movieClip 的父级和子级。

我的问题是我只能移除孩子而父母一直留在舞台上!

这是我删除父母和孩子的代码:

    removeChild(clip_mc);
    clip_mc = null;
    gotoAndStop(2); 

这就是我创建影片剪辑及其子项的方式:

                     var clip_mc = new MovieClip();
                     // Add the rectangle graphic
                     clip_mc.addChild(rect);
                     // Add the text field
                     clip_mc.addChild(myText);

                     clip_mc.addChild(pictLdr2);
                     // Put the new movieClip on stage now
                     addChild(clip_mc);
                     // Make the mouse button mode true for the movieclip so user knows it is a button
                     clip_mc.buttonMode = true;     

我想,添加 removeChild(); 也会删除父级,但在我的情况下,它只会删除子级并且父级会留在舞台上

有人可以就此提出建议吗?

谢谢

【问题讨论】:

  • 在您的情况下,父母是什么?代码并不清楚。
  • 如果你的代码放在不同的帧上,你应该把你所有的代码放在一个帧上,第一帧。

标签: actionscript-3 flash


【解决方案1】:

要删除一个对象,clip_mc 在您的情况下,您可以这样做:(将 cmets 放入代码中)

if(contains(clip_mc)){

    clip_mc.parent.removeChild(clip_mc) // removes clip_mc from it's container 

    trace(contains(clip_mc))            // gives : false

    trace(clip_mc)                      // gives : [object MovieClip]

    clip_mc = null                      // removes the reference of clip_mc

    trace(clip_mc)                      // gives : null

}

测试代码:

var rect:clp = new clp()

var clip_mc = new MovieClip()
    clip_mc.addChild(rect)
    clip_mc.buttonMode = true

addChild(clip_mc)

// of course, we activate this portion just at the end to remove clip_mc
if (contains(clip_mc)){
    clip_mc.parent.removeChild(clip_mc)
    clip_mc = null
}

【讨论】:

  • 仍然在舞台上留下实际的父 clip_mc!
  • 如何验证 clip_mc 是否一直在舞台上?
  • 因为我可以在舞台上看到它!
  • 我使用了你的代码,它对我有用。我将编辑我的答案以向您显示确切的代码。
  • 对不起,什么是 var rect:clp = new clp(); ?我收到一个错误,您的代码是:场景 1,图层“图层 1”,第 1 帧,第 1 行 1046:找不到类型或不是编译时常量:clp。
【解决方案2】:

尝试使用clip_mc.parent.parent.removeChild(clip_mc.parent)

【讨论】:

    猜你喜欢
    • 2018-03-29
    • 1970-01-01
    • 1970-01-01
    • 2019-02-02
    • 1970-01-01
    • 1970-01-01
    • 2012-09-12
    • 1970-01-01
    • 2014-03-02
    相关资源
    最近更新 更多