2015-12-17 131 views
1

關鍵字this不能在靜態方法中使用。我通過設計使用靜態方法,但也需要用該方法彈出一個窗口。這是我的代碼。我觀察到PopUpManager類的createPopUp方法,它需要一個DisplayObject作爲第一個參數。 thisDisplayObject,但我沒有得到什麼DisplayObject在那一點上。那麼如何將this替換爲相應的/正確的DisplayObject此關鍵字和靜態方法 - Flex


public static function UniteDetayPopup(f:Function):void 
{ 
    var uniteler:UniteDetay = PopUpManager.createPopUp(this, UniteDetay, true) as UniteDetay; 
    PopUpManager.centerPopUp(uniteler); 
} 

編輯:

它是在一個TitleWindow組件,並將其與其他部件彈出。

回答

4

您可以將Application實例傳遞給此方法。

var uniteler:UniteDetay = PopUpManager.createPopUp(FlexGlobals.topLevelApplication as DisplayObject, UniteDetay, true) as UniteDetay; 
+0

我創建了一個DisplayObject變量賦值(只是一個較短的括號),它就像一個魅力。謝謝! – coner

+0

@不用客氣! –