该架构基于以下框架的使用:Flex,Cairngorm和Parsley。
我在popuppnel:PopupPanel中使用带有“AdicionarItemVendaMercadoriaEvent”事件的调度程序。
我使用注入Form.mxml的FormPM.as中的[MessageHandler]捕获事件。 在Form.mxml中,我有一个mx:TabNavigator,每个选项卡都在一个s:NavigatorContent中。
事实证明,当有多个打开的标签mx:TabNavigator时,将在所有标签的所有表单中捕获已分派的事件。
正常操作是捕获分派PopupPanel的选项卡的唯一事件,而不是所有选项卡。
请问,有任何解决这个问题的建议吗?
我很感激帮助。
答案 0 :(得分:0)
如何使用直接函数回调?
创建PopUpPanel时,传入要在弹出窗口关闭时执行的函数回调。您只需调用该函数,而不是使用事件。即。
FormPM内部:
public function showPopup():void
{
var popup:PopUpPanel = new PopUpPanel();
popup.onCompletion = handleResult;
PopUpManager.addPopUp(popup, ...);
}
private function handleResult(someData:*):void
{
// My popup has completed.. what do I want to do with the result.
}
您可能需要考虑Spicelib 3.0命令框架,并命令弹出面板,然后将错误/成功回调添加到:http://www.spicefactory.org/parsley/docs/3.0/manual/?page=commands§ion=intro