Actionscript 3 查找要在PopUpManager中使用的DisplayObject

Actionscript 3 查找要在PopUpManager中使用的DisplayObject,actionscript-3,apache-flex,flex4.5,Actionscript 3,Apache Flex,Flex4.5,我正在为Flex Web客户端创建一个扩展。我的扩展是通过UI中的菜单项引入的。当用户从菜单中选择操作时,它将运行我的特定ActionScript方法 我想让我的ActionScript方法使用PopUpManager创建一个弹出窗口。我遇到的问题是PopUpManager.createPopUp的第一个参数是DisplayObject。因为我将直接使用AS方法,所以不能使用inheritdisplayobject(也称为“this”) 我正在寻找一种从AS方法中查找或访问父/根DisplayO

我正在为Flex Web客户端创建一个扩展。我的扩展是通过UI中的菜单项引入的。当用户从菜单中选择操作时,它将运行我的特定ActionScript方法

我想让我的ActionScript方法使用PopUpManager创建一个弹出窗口。我遇到的问题是PopUpManager.createPopUp的第一个参数是DisplayObject。因为我将直接使用AS方法,所以不能使用inheritdisplayobject(也称为“this”)

我正在寻找一种从AS方法中查找或访问父/根DisplayObject引用的方法。这可能吗?我对Flex/ActionScript还很陌生,所以我可能对这里发生的事情有一个基本的误解


提前谢谢

根据我之前的评论,为正在搜索此主题的其他人提供自我回答

import mx.core.FlexGlobals
var popup:IFlexDisplayObject = popUpManager.createPopUp(FlexGlobals.topLevelApplication as   DisplayObject, MyPopUp, false); PopUpManager.centerPopUp(popup);

向我们展示一些代码,通常情况下,如果您的函数位于从displayObject继承的类中,并且它被添加到stage中,那么this.stage和this.parent分别指向stage和parent。如果没有,您必须将对stage/parent的引用存储在某个位置,或者将它们传递给您的函数。在与一些同事交谈后,我转向了这个解决方案:导入mx.core.FlexGlobals。。。var popup:IFlexDisplayObject=popUpManager.createPopUp(FlexGlobals.topLevelApplication作为DisplayObject,MyPopUp,false);PopUpManager.centerPopUp(弹出窗口);