在我的應用程序中,我有一個圖表,我想在單擊時顯示在TitleWindow中。Flex TitleWindow.addChild刪除原始對象
var win:TitleWindow = PopUpManager.createPopUp(this, TitleWindow, false) as TitleWindow;
win.addChild(myChart);
PopUpManager.bringToFront(win);
它確實將圖表放置在顯示的標題窗口中,但它從父級刪除了原始圖表。然後,當標題窗口關閉時,我的圖表就消失了。我無法弄清楚如何克隆圖表 - 我嘗試過的所有方法都失敗了 - 我不知道爲什麼會發生這種情況。
解決方案:
public var barChart:BarChart;
public function onClick(e:Object):void
{
barChart = (e as BarChart);
if(barChart != null)
{
var win:MyWindow = PopUpManager.createPopUp(this, MyWindow, false) as MyWindow;
PopUpManager.centerPopUp(win);
}
}
// ... MyWindow.mxml ...
var _parent:Object;
private function creationComplete(e:Event):void
{
bChart = parentApplication.barChart;
_parent = bChart.parent;
this.addChild(bChart);
}
private function onMyWindowClose(evt:CloseEvent):void {
_parent.addChild(bChart);
PopUpManager.removePopUp(this);
}
嘿,我來這裏發佈這個確切的解決方案。 – FlexMan 2009-12-21 09:20:19