Код для отображения вашего всплывающего окна:
var popup:MyPopup = new popup:MyPopup();
popup.addEventListener(CloseEvent.CLOSE, function(evt) {
PopUpManager.removePopUp(popup);
});
PopUpManager.addPopUp(popup, this, true);
В вашем классе MyPopup
у вас будет кнопка для закрытия всплывающего окна.Просто подключите событие click, чтобы опубликовать событие «CLOSE»:
<s:Button Label="X" click="dispatchEvent(new CloseEvent(CloseEvent.CLOSE));" />
Я предпочитаю этот механизм, чем объект MyPopup
, вызывающий PopUpManger.removePopUp
(как предлагает @Fank), потому что он связывает MyPopup
компонент к PopUpManager
, который мне не нравится.Я бы предпочел, чтобы пользователь MyPopup
решил, как использовать компонент.
Честно говоря, это два очень похожих механизма для достижения одной и той же конечной цели.