使用removeChild时发生Flex 3错误#2025
-
28-09-2019 - |
题
我收到一个Flex ArgumentError:错误#2025:提供的DisplayObject必须是调用方的子级。
这就是我所拥有的:
a)我将变量lastButtonClicked设置为主应用程序中单击的最后一个按钮。 通用标签
b)我打开了一个TitleWindow,并且有一个yes / no选项。我有一个自定义事件,将答案返回主应用程序。
c)在主应用中,我试图根据自定义事件发送的数据删除lastButtonClicked。所以,我的问题是在此功能。由于某种原因,它不会让我删除按钮。我收到错误消息2025。 通用标签
关于如何调试此问题的任何建议?自定义事件触发正常。我如何解决这一行:removeChild(lastButtonClicked); ?
编辑:我尝试了hbox1.removeChild(lastButtonClicked)并成功。从主应用程序中删除了正确的按钮。问题在于,并非所有按钮都在hBox1中。我还有其他的HBoxes。因此,我需要找出一种更通用的方法,而不是在语句中使用hBox1。我累了this.removeChild(lastButtonClicked),但是没有用。谢谢。
谢谢。
-Laxmidi
解决方案 2
我解决了。我做了一个变量,并将其设置为lastButtonClicked的父代。
private var myParent:Object; myParent= lastButtonClicked.parent;
然后在我写的answerHandler中:
myParent.removeChild(lastButtonClicked);
谢谢。
-Laxmidi
其他提示
据我了解,似乎您在TitleWindow
中具有按钮,在应用程序中具有事件处理程序。您可能想为removeChild
的实例(例如,TitleWindow
)调用titleWindow.removeChild(lastButtonClicked)
,而不是从应用程序中调用。