如何通过选择一行并按下删除按钮来删除MovieClip?

时间:2016-01-07 19:17:05

标签: actionscript movieclip

我有一个datagrid,其中添加了行。每当添加行时,都会向舞台添加影片剪辑。如果单击行和按钮,我添加了一个按钮来删除数据网格中的一行,并且所有这些都能很好地工作。

但是,当我尝试删除与数据网格中该行相关的影片剪辑时,它不起作用。

我的代码是:

function removeloaditem(event:MouseEvent) {
datagrid.removeItemAt(datagrid.selectedIndex);
removeChild(MovieClip(datagrid.selectedIndex);
}

1 个答案:

答案 0 :(得分:0)

removeChild(MovieClip(datagrid.selectedIndex);

您需要了解这行代码尝试做什么。

datagrid.selectedIndex

这个变量只是一个数字。因此,您正在尝试将数字转换为MovieClip。

MovieClip(1)

这不起作用。您需要引用 实际 MovieClip对象。无论您在何处创建MovieClip对象,都需要存储对该对象的引用。您可以使用普通的Object存储所有引用。

var objectList:Object = {};

然后,无论您在何处创建MovieClip,请添加以下行:

objectList["reference_" + datagrid.selectedIndex] = "movieclip variable";

替换" movieclip变量"引用你的movieclip对象。之后,用以下两行替换当前的removeChild行:

var movieclip = objectList["reference_" + datagrid.selectedIndex]
moveclip.parent.removeChild(movieclip);